Il s'agit d'une implémentation de référence du serveur de réservation de l'API v3 pour l'intégration standard basée sur Node.js.
Prérequis
Nécessite l'installation de
Premiers pas
Le serveur de réservation est implémenté à l'aide de Node.js standard, sans aucune bibliothèque ni aucun framework supplémentaires, à des fins d'illustration. Si vous utilisez d'autres frameworks, vous pouvez facilement remplacer cette implémentation par Express.js, MEAN.js ou tout autre framework basé sur Node.js de votre choix.
L'implémentation n'utilise pas non plus de bibliothèques de tampons de protocole, mais s'appuie plutôt sur une sérialisation JSON simple et ses méthodes JSON.parse() et JSON.stringify().
Pour télécharger le projet, exécutez la commande suivante :
git clone https://maps-booking.googlesource.com/js-maps-booking-rest-server-v3-skeleton
L'intégralité du code de base ne comporte que deux fichiers JavaScript :
- bookingserver.js : logique de gestion des requêtes et du serveur HTTP, y compris l'authentification
- apiv3methods.js : méthodes implémentant l'interface de l'API v3
Une fois les fichiers téléchargés, vous pouvez démarrer le serveur de réservation en exécutant la commande suivante :
node bookingserver.js
Le squelette écrit toutes les requêtes entrantes et sortantes dans la console. Vous pouvez ainsi surveiller son exécution à des fins de traçage.
Si vous avez besoin d'un IDE pour modifier ou déboguer le code, vous pouvez utiliser Visual Studio Code ou tout autre éditeur de votre choix. Déboguez le projet en démarrant bookingserver.js dans l'environnement Node.js et en définissant des points d'arrêt si nécessaire.
Tester votre serveur de réservation
Téléchargez l'utilitaire de test de réservation. Pour l'installer, suivez les instructions d'installation fournies sur sa page README.
Pour les tests, vous devez créer un fichier texte pour stocker vos identifiants. Saisissez votre nom d'utilisateur et votre mot de passe sur une seule ligne, par exemple dans un fichier nommé cred.txt :
username:password
Vous avez également besoin d'une copie locale d'un flux de disponibilité pour vos marchands de test. Dans les exemples de commandes ci-dessous, le flux de disponibilité est avail.json.
Vous pouvez maintenant tester votre serveur de réservation avec les commandes suivantes :
- Appels de test à la méthode HealthCheck :
bin/bookingClient -server_addr="localhost:8080" -health_check_test=true -credentials_file="./cred.txt"
- Appels de test à la méthode CheckAvailability :
bin/bookingClient -server_addr="localhost:8080" -check_availability_test=true -availability_feed="./avail.json" -credentials_file="./cred.txt"
- Appels de test aux méthodes CreateBooking et UpdateBooking :
bin/bookingClient -server_addr="localhost:8080" -booking_test=true -availability_feed="./avail.json" -credentials_file="./cred.txt"
Comme vous implémentez votre propre serveur de réservation, vous devrez peut-être exécuter des tests supplémentaires (par exemple, list_bookings_test, rescheduling_test, etc.) pour vous assurer que tous les tests sont réussis (-all_tests=true).