Rezerwacja szkieletu serwera dla Node.js

To jest referencyjna implementacja serwera rezerwacji interfejsu API w wersji 3 do integracji standardowej i serwera rezerwacji interfejsu API w wersji 3 do integracji listy oczekujących opartej na Node.js

Wymagania wstępne

Wymaga zainstalowania

Pierwsze kroki

Do celów poglądowych serwer obsługi rezerwacji jest wdrożony za pomocą standardowego Node.js bez dodatkowych bibliotek lub struktur. Jeśli korzystasz z innych platform, możesz łatwo zmienić tę implementację na Express.js, MEAN.js lub dowolną inną platformę opartą na Node.js.

Implementacja nie korzysta też z bibliotek bufora protokołu, ale zależy od prostej serializacji JSON i jej metod 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 zawiera tylko 2 pliki JavaScript:

  • rezerwacjaserver.js – serwer HTTP i wymagający obsługi logiki, w tym uwierzytelniania.
  • apiv3methods.js – metody implementacji interfejsu API w wersji 3

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

node bookingserver.js

Szkielet zapisuje wszystkie przychodzące i wychodzące żądania do konsoli, dzięki czemu możesz monitorować jego wykonanie na potrzeby śledzenia.

Jeśli do zmian kodu lub debugowania potrzebny jest IDE, możesz użyć kodu Visual Studio lub dowolnego innego edytora. Przeprowadź debugowanie projektu, uruchamiając serwer rezerwacji serwera.js w środowisku Node.js i w razie potrzeby ustawiając punkty przerwania.

Testowanie serwera rezerwacji

Pobierz narzędzie do testowania rezerwacji. Aby go zainstalować, postępuj zgodnie z instrukcjami instalacji podanymi na stronie README.

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

user:hasło

Potrzebujesz też lokalnej kopii pliku danych o dostępności dla sprzedawców testowych. W przykładowych poleceniach poniżej plik danych o dostępności to avail.json.

Teraz możesz przetestować serwer rezerwacji za pomocą tych poleceń:

  • Testuj wywołania metody HealthCheck:
    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"
    

Podczas implementowania własnego serwera rezerwacji może być konieczne przeprowadzenie dodatkowych testów (np.list_bookings_test, rescheduling_test itp.) w celu ukończenia wszystkich testów (-all_tests=true).