Szkielet serwera rezerwacji dla Node.js

To jest referencyjna implementacja Serwer rezerwacji interfejsu API w wersji 3 do integracji standardowej oparte na Node.js

Wymagania wstępne

Wymaga zainstalowania

Pierwsze kroki

Serwer rezerwacji jest zaimplementowany za pomocą standardowego środowiska Node.js bez żadnego bibliotek lub platform do celów ilustracyjnych. Jeśli jesteś za pomocą innych platform, możesz łatwo zmienić tę implementację, Express.js, MEAN.js lub dowolną inną platformę opartą na Node.js.

Implementacja nie korzysta też z bibliotek bufora protokołu, ale zamiast tego opiera się na prostej serializacji JSON i jej funkcjach JSON.parse() i JSON.stringify() .

Aby pobrać projekt, uruchom to polecenie:

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

Cała baza kodu składa się tylko z 2 plików JavaScript:

  • Reserveserver.js – serwer HTTP i logika obsługi żądań, w tym uwierzytelnianie.
  • apiv3methods.js – metody wdrażania interfejsu API w wersji 3

Po pobraniu plików możesz uruchomić serwer rezerwacji, uruchamiając polecenie polecenie:

node bookingserver.js

Szkielet zapisuje wszystkie przychodzące i wychodzące żądania w konsoli, może monitorować jego wykonanie na potrzeby śledzenia.

Jeśli potrzebujesz IDE do modyfikowania kodu lub debugowania, możesz za pomocą Visual Studio Code lub dowolny z wybranego edytora. Przeprowadź debugowanie projektu, uruchamiając plik Reserveserver.js w w środowisku Node.js i w razie potrzeby ustawić punkty przerwania.

Testowanie serwera rezerwacji

Pobierz Narzędzie do testowania rezerwacji. Aby ją zainstalować, postępuj zgodnie z dołączonymi instrukcjami instalacyjnymi na stronie README.

Na potrzeby testów musisz utworzyć plik tekstowy do przechowywania danych logowania. Wpisz swoją nazwę użytkownika i hasło w jednym wierszu, na przykład w pliku. o nazwie cred.txt:

nazwa użytkownika:hasło

Musisz też mieć lokalną kopię pliku danych o dostępności dla sprzedawców testowych. W przykładowych poleceniach poniżej plik danych dostępności jest dostępny w pliku delivery.json.

Teraz możesz przetestować serwer rezerwacji, używając tych poleceń:

  • Przetestuj wywołania metody kontroli stanu:
    bin/bookingClient -server_addr="localhost:8080" -health_check_test=true -credentials_file="./cred.txt"
    
  • Przetestuj wywołania metody CheckAvailability:
    bin/bookingClient -server_addr="localhost:8080" -check_availability_test=true -availability_feed="./avail.json" -credentials_file="./cred.txt"
    
  • Przetestuj wywołania metod CreateBooking i UpdateBooking:
    bin/bookingClient -server_addr="localhost:8080" -booking_test=true -availability_feed="./avail.json" -credentials_file="./cred.txt"
    

Ponieważ wdrażasz własny serwer rezerwacji, konieczne może być uruchomienie dodatkowe testy (np.list_bookings_test, rescheduling_test itp.); pod kątem tego, by wszystkie testy zakończyły się powodzeniem (-all_tests=true).