Server di prenotazione scheletri per Node.js

Questa è un'implementazione di riferimento di API v3 Server di prenotazione per integrazione standard e Server di prenotazione API v3 per integrazione a lista d'attesa basato su Node.js

Prerequisiti

Richiede l'installazione di

Per iniziare

Il server di prenotazione viene implementato utilizzando Node.js standard senza ulteriori librerie o framework a scopo illustrativo. Se utilizzi altri framework, puoi facilmente modificare questa implementazione in Express.js, MEAN.js o in qualsiasi altro framework basato su Node.js.

Inoltre, l'implementazione non utilizza librerie di buffer di protocollo, ma si basa sulla serializzazione JSON semplice e sui suoi metodi JSON.parse() e JSON.stringify().

Per scaricare il progetto, esegui il comando seguente:

git clone https://maps-booking.googlesource.com/js-maps-booking-rest-server-v3-skeleton

L'intero codebase è costituito solo da due file JavaScript:

  • prenotazioneserver.js - server HTTP e logica di gestione delle richieste, inclusa l'autenticazione
  • apiv3methods.js - Metodi di implementazione dell'interfaccia API v3

Dopo aver scaricato i file, puoi avviare il server di prenotazione eseguendo il comando:

node bookingserver.js

Lo scheletro scrive tutte le richieste in entrata e in uscita alla console, quindi puoi monitorarne l'esecuzione per scopi di tracciamento.

Se hai bisogno di un IDE per le modifiche al codice o il debug, puoi utilizzare il codice di Visual Studio o qualsiasi altro editor a tua scelta. Esegui il debug del progetto avviando serviceserver.js nell'ambiente Node.js e imposta i punti di interruzione dove necessario.

Test del server di prenotazione in corso...

Scarica Utilità del test di prenotazione. Per installarlo, segui le istruzioni per l'installazione fornite nella relativa pagina README.

Per i test, devi creare un file di testo per archiviare le tue credenziali. Inserisci il nome utente e la password in una singola riga, ad esempio, in un file denominato cred.txt:

nomeutente:password

Inoltre è necessaria una copia locale di un feed di disponibilità per i commercianti di prova. Nei comandi di esempio riportati di seguito, il feed di disponibilità è avail.json.

Ora puoi testare il tuo server di prenotazione con questi comandi:

  • Test delle chiamate al metodo HealthCheck:
    bin/bookingClient -server_addr="localhost:8080" -health_check_test=true -credentials_file="./cred.txt"
    
  • Testa le chiamate al metodo CheckAvailability:
    bin/bookingClient -server_addr="localhost:8080" -check_availability_test=true -availability_feed="./avail.json" -credentials_file="./cred.txt"
    
  • Chiamate di prova per i metodi CreateBooking e UpdateBooking:
    bin/bookingClient -server_addr="localhost:8080" -booking_test=true -availability_feed="./avail.json" -credentials_file="./cred.txt"
    

Durante l'implementazione del tuo server di prenotazione, potrebbe essere necessario eseguire ulteriori test (ad esempio, list_bookings_test, rescheduling_test e così via) con l'obiettivo di superare tutti i test (-all_tests=true).