Dies ist eine Referenzimplementierung des Buchungsservers für die Standardintegration mit API v3 auf Basis von Node.js.
Vorbereitung
Erfordert die Installation von
Erste Schritte
Der Buchungsserver wird zu Illustrationszwecken 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.
Bei der Implementierung werden auch keine Protokollzwischenspeicher-Bibliotheken verwendet, sondern 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 aus nur zwei JavaScript-Dateien:
- bookingserver.js: HTTP-Server und Logik für die Verarbeitung von 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 Gerüst schreibt alle eingehenden und ausgehenden Anfragen in die Konsole, sodass Sie die Ausführung zu Tracing-Zwecken überwachen können.
Wenn Sie eine IDE für Codeänderungen oder das Debugging benötigen, können Sie Visual Studio Code oder einen anderen Editor Ihrer Wahl verwenden. Führen Sie die Fehlerbehebung für das Projekt durch, indem Sie „bookingserver.js“ in der Node.js-Umgebung starten und bei Bedarf Breakpoints festlegen.
Buchungsserver testen
Laden Sie das Buchungstest-Tool herunter. Folgen Sie der Installationsanleitung auf der README-Seite, um das Tool zu installieren.
Für die Tests müssen Sie eine Textdatei erstellen, in der Ihre Anmeldedaten gespeichert werden. Geben Sie Ihren Nutzernamen und Ihr Passwort in einer einzelnen Zeile ein, z. B. in einer Datei mit dem Namen „cred.txt“:
username:password
Außerdem benötigen Sie eine lokale Kopie eines Verfügbarkeitsfeeds für Ihre Test-Händler. In den Beispielbefehlen unten ist der Verfügbarkeitsfeed „avail.json“.
Jetzt können Sie Ihren Buchungsserver mit diesen Befehlen testen:
- Testaufrufe der HealthCheck-Methode:
bin/bookingClient -server_addr="localhost:8080" -health_check_test=true -credentials_file="./cred.txt"
- Testanrufe für die CheckAvailability-Methode:
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 dafür ausführen (z. B. list_bookings_test, rescheduling_test usw.), damit alle Tests bestanden werden (-all_tests=true).