Skeleton del server di prenotazione per Node.js

Questa è un'implementazione di riferimento Server di prenotazione dell'API v3 per l'integrazione standard basate su Node.js

Prerequisiti

Richiede l'installazione di

Per iniziare

Il server di prenotazione è implementato utilizzando Node.js standard senza librerie o framework aggiuntivi a scopo illustrativo. Se utilizzando altri framework, potresti facilmente cambiare questa implementazione in Express.js, MEAN.js o qualsiasi altro framework basato su Node.js di tua scelta.

Inoltre, l'implementazione non utilizza librerie del buffer di protocollo, si basa su una semplice serializzazione JSON e sulle sue JSON.parse() e JSON.stringify() di machine learning.

Per scaricare il progetto, esegui questo comando:

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

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

  • Bookserver.js: logica di gestione del server HTTP e delle richieste, inclusa l'autenticazione
  • apiv3methods.js - metodi che implementano l'interfaccia dell'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 nella console, possa monitorarne l'esecuzione ai fini di tracciamento.

Se hai bisogno di un IDE per le modifiche al codice o il debug, puoi usare Visual Studio Code o qualsiasi altro che preferisci. Esegui il debug del progetto avviando Bookserver.js nel dell'ambiente Node.js e impostare i punti di interruzione dove necessario.

Test del server di prenotazione

Scarica Utilità dei test di prenotazione. Per installarla, segui le istruzioni di installazione fornite istruzioni nella relativa pagina README.

Per i test, devi creare un file di testo in cui archiviare le credenziali. Inserisci il tuo nome utente e la tua password su una sola riga, ad esempio in un file denominato cred.txt:

nomeutente:password

Ti serve anche una copia locale di un feed disponibilità per i tuoi commercianti di prova. Nei comandi di esempio riportati di seguito, il feed Disponibilità è avail.json.

Ora puoi testare il server di prenotazione con questi comandi:

  • Chiamate di prova al metodo HealthCheck:
    bin/bookingClient -server_addr="localhost:8080" -health_check_test=true -credentials_file="./cred.txt"
    
  • Chiamate di test al metodo Checkavailability:
    bin/bookingClient -server_addr="localhost:8080" -check_availability_test=true -availability_feed="./avail.json" -credentials_file="./cred.txt"
    
  • Chiamate di prova ai metodi CreateBooking e UpdateBooking:
    bin/bookingClient -server_addr="localhost:8080" -booking_test=true -availability_feed="./avail.json" -credentials_file="./cred.txt"
    

Poiché stai implementando un tuo server di prenotazione, potresti dover eseguire test aggiuntivi (ad es.list_bookings_test, rescheduling_test e così via). con l'obiettivo di superare tutti i test (-all_tests=true).