Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
In questo passaggio scarichi, distribuisci e testerai l'applicazione di Tic-Tac-Toe gioco sul tuo computer locale. Invece di usare il servizio Web Amazon DynamoDB, scaricherai DynamoDB nel computer e creerai la tabella necessaria in questa posizione.
1.1: Download e installazione dei pacchetti richiesti
Per testare l'applicazione in locale, è necessario quanto segue:
-
Python
-
Flask (un microframework per Python)
-
AWS SDK for Python (Boto)
-
DynamoDB in esecuzione nel computer
-
Git
Per ottenere questi strumenti, procedi come indicato di seguito:
-
Installare Python. Per step-by-step istruzioni, consulta Download Python
. L' Tic-Tac-Toeapplicazione è stata testata utilizzando Python versione 2.7.
-
Installa Flask e AWS SDK for Python (Boto) usa Python Package PIP Installer ():
-
Installare PIP.
Per istruzioni, vedete Install. PIP
Nella pagina di installazione scegli il collegamento get-pip.py e quindi salva il file. Apri un terminale dei comandi come amministratore e inserisci quanto segue al prompt dei comandi: python.exe get-pip.py
In Linux non devi specificare l'estensione
.exe
. Specifichi solopython get-pip.py
. -
UtilizzandoPIP, installa i pacchetti Flask e Boto utilizzando il codice seguente.
pip install Flask pip install boto pip install configparser
-
-
Scaricare DynamoDB sul computer. Per istruzioni sull'esecuzione, consulta Configurazione di DynamoDB locale (versione scaricabile) .
-
Scarica l'applicazione: Tic-Tac-Toe
-
Installa Git. Per istruzioni, consulta la pagina relativa ai download di git
. -
Per scaricare l'applicazione, eseguire il codice descritto di seguito.
git clone https://github.com/awslabs/dynamodb-tictactoe-example-app.git
-
1.2: Test dell'applicazione di gioco
Per testare l' Tic-Tac-Toeapplicazione, è necessario eseguire DynamoDB localmente sul computer.
Per eseguire l'applicazione tic-tac-toe
-
Avviare DynamoDB.
-
Avviare il server Web per l' Tic-Tac-Toeapplicazione.
A tale scopo, aprite un terminale di comando, accedete alla cartella in cui avete scaricato l' Tic-Tac-Toeapplicazione ed eseguite l'applicazione localmente utilizzando il codice seguente.
python.exe application.py --mode local --serverPort 5000 --port 8000
In Linux non devi specificare l'estensione
.exe
. -
Apri il browser Web e inserisci quanto segue.
http://localhost:5000/
Nel browser viene visualizzata la home page.
-
Inserisci
user1
nella casella Log in (Accesso) per accedere come user1.Nota
Questa applicazione di esempio non esegue l'autenticazione utente. L'ID utente viene usato solo per identificare i giocatori. Se due giocatori accedono con lo stesso alias, l'applicazione funziona come se stessi giocando in due browser diversi.
-
Se è la prima volta che si gioca, viene visualizzata una pagina in cui viene richiesto di creare la tabella necessaria (
Games
) in DynamoDB. Scegliere CREATE TABLE. -
Scegli CREATEdi creare il primo tic-tac-toe gioco.
-
Inserisci
user2
nella casella Scegli un avversario e scegli Crea partita.In questo modo, viene creata la partita aggiungendo un item nella tabella
Games
. Lo stato della partita viene impostato suPENDING
. -
Apri un'altra finestra del browser e inserisci quanto segue.
http://localhost:5000/
Il browser passa le informazioni tramite cookie, quindi devi usare la modalità di navigazione in incognito o di esplorazione privata, in modo che i cookie non vengano trasferiti.
-
Accedi come user2.
Viene visualizzata una pagina che mostra un invito in attesa da user1.
-
Scegli accept (accetta) per accettare l'invito.
La pagina del gioco appare con una tic-tac-toe griglia vuota. Nella pagina sono visualizzate anche informazioni rilevanti sulla partita, come l'ID della partita, il giocatore di turno e lo stato della partita.
-
Gioca la partita.
Per ogni mossa dell'utente, il servizio Web invia una richiesta a DynamoDB per l'aggiornamento condizionale dell'elemento di gioco nella tabella Games
. Le condizioni garantiscono, ad esempio, che la mossa sia valida, che il quadrato scelto dall'utente sulla griglia sia disponibile e che fosse il turno dell'utente che ha fatto la mossa. Per una mossa valida, l'operazione di aggiornamento aggiunge un nuovo attributo corrispondente alla selezione sulla griglia. L'operazione di aggiornamento imposta anche il valore dell'attributo esistente sull'utente che può fare la mossa successiva.
Nella pagina del gioco, l'applicazione effettua JavaScript chiamate asincrone ogni secondo, per un massimo di 5 minuti, per verificare se lo stato del gioco in DynamoDB è cambiato. In caso affermativo, l'applicazione aggiorna la pagina con le nuove informazioni. Dopo 5 minuti, l'applicazione smette di eseguire richieste ed è necessario aggiornare la pagina manualmente per ottenere le informazioni aggiornate.