Buchungsserver-Skelett für Node.js

Dies ist eine Referenzimplementierung des API v3-Buchungsservers für die Standardintegration auf Basis von Node.js.

Vorbereitung

Erfordert die Installation von

Erste Schritte

Der Buchungsserver wird hier zu Veranschaulichungszwecken mit Standard-Node.js ohne zusätzliche Bibliotheken oder Frameworks implementiert. Wenn Sie andere Frameworks verwenden, können Sie diese Implementierung ganz einfach in Express.js, MEAN.js oder ein anderes Node.js-basiertes Framework Ihrer Wahl ändern.

Die Implementierung verwendet auch keine Protokoll-Buffer-Bibliotheken, sondern setzt stattdessen auf die einfache JSON-Serialisierung und die Methoden JSON.parse() und JSON.stringify().

Führen Sie den folgenden Befehl aus, um das Projekt herunterzuladen:

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

Die gesamte Codebasis besteht nur aus zwei JavaScript-Dateien:

  • bookingserver.js – Logik für HTTP-Server und Anfragen, einschließlich Authentifizierung
  • apiv3methods.js – Methoden zur Implementierung der API v3-Schnittstelle

Nachdem Sie die Dateien heruntergeladen haben, können Sie den Buchungsserver mit dem folgenden Befehl starten:

node bookingserver.js

Das Skelett schreibt alle ein- und ausgehenden Anfragen in die Konsole, damit Sie die Ausführung zu Analysezwecken beobachten können.

Wenn Sie eine IDE für Codeänderungen oder das Debuggen benötigen, können Sie Visual Studio Code oder einen anderen Editor Ihrer Wahl verwenden. Starten Sie das Projekt, indem Sie „bookingserver.js“ in der Node.js-Umgebung starten und bei Bedarf Haltestellen setzen.

Buchungsserver testen

Laden Sie das Dienstprogramm für Buchungstests herunter. Folgen Sie der Installationsanleitung auf der README-Seite, um es zu installieren.

Für die Tests müssen Sie eine Textdatei erstellen, in der Sie Ihre Anmeldedaten speichern. Geben Sie Ihren Nutzernamen und Ihr Passwort in eine Zeile ein, z. B. in die Datei „cred.txt“:

username:password

Außerdem benötigen Sie eine lokale Kopie eines Verfügbarkeitsfeeds für Ihre Testhändler. In den Beispielbefehlen unten lautet der Verfügbarkeitsfeed „avail.json“.

Jetzt können Sie Ihren Buchungsserver mit den folgenden Befehlen testen:

  • Aufrufe der HealthCheck-Methode testen:
    bin/bookingClient -server_addr="localhost:8080" -health_check_test=true -credentials_file="./cred.txt"
  • Aufrufe der CheckAvailability-Methode testen:
    bin/bookingClient -server_addr="localhost:8080" -check_availability_test=true -availability_feed="./avail.json" -credentials_file="./cred.txt"
  • Testaufrufe der Methoden „CreateBooking“ und „UpdateBooking“:
    bin/bookingClient -server_addr="localhost:8080" -booking_test=true -availability_feed="./avail.json" -credentials_file="./cred.txt"

Wenn Sie Ihren eigenen Buchungsserver implementieren, müssen Sie möglicherweise zusätzliche Tests darauf ausführen (z.B. „list_bookings_test“ oder „rescheduling_test“), damit alle Tests bestanden werden (-all_tests=true).