Node.js için Rezervasyon Sunucusu İskeleti

Bu, Node.js'ye dayalı Standart Entegrasyon için API v3 Rezervasyon Sunucusu'nun referans uygulamasıdır.

Ön koşullar

Aşağıdakilerin yüklenmesini gerektirir:

Başlayın

Rezervasyon Sunucusu, açıklama amacıyla herhangi bir ek kitaplık veya çerçeve olmadan standart Node.js kullanılarak uygulanır. Başka herhangi bir çerçeve kullanıyorsanız bu uygulamayı Express.js, MEAN.js veya istediğiniz Node.js tabanlı başka bir çerçeve ile kolayca değiştirebilirsiniz.

Uygulama, protokol arabellek kitaplıklarını da kullanmaz. Bunun yerine, basit JSON serileştirmesinin yanı sıra JSON.parse() ve JSON.stringify() yöntemlerine dayanır.

Projeyi indirmek için aşağıdaki komutu yürütün:

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

Kod tabanının tamamı yalnızca iki JavaScript dosyasından oluşur:

  • rezervasyonserver.js - HTTP sunucusu ve kimlik doğrulama dahil istek işleme mantığı
  • apiv3methods.js - API v3 arayüzünü uygulama yöntemleri

Dosyaları indirdikten sonra şu komutu çalıştırarak Rezervasyon Sunucusu'nu başlatabilirsiniz:

node bookingserver.js

İskelet, gelen ve giden tüm istekleri konsola yazar. Böylece izleme amacıyla yürütülmesini izleyebilirsiniz.

Kod değişiklikleri veya hata ayıklama için IDE'ye ihtiyacınız olursa Visual Studio Code'u veya dilediğiniz başka bir düzenleyiciyi kullanabilirsiniz. Node.js ortamında rezervasyonserver.js'yi başlatarak projede hata ayıklayın ve gerektiğinde kesme noktaları ayarlayın.

Rezervasyon Sunucunuzu test etme

Rezervasyon test yardımcı programı dosyasını indirin. Yüklemek için README sayfasında sağlanan yükleme talimatlarını uygulayın.

Testler için kimlik bilgilerinizi depolamak üzere bir metin dosyası oluşturmanız gerekir. Kullanıcı adınızı ve şifrenizi tek bir satıra, örneğin cred.txt adlı bir dosyaya girin:

username:şifre

Test satıcılarınız için bir stok durumu feed'inin yerel kopyasına da ihtiyacınız vardır. Aşağıdaki örnek komutlarında, stok durumu feed'i avail.json dosyasıdır.

Artık rezervasyon sunucunuzu şu komutlarla test edebilirsiniz:

  • HealthCheck yöntemine yapılan test çağrıları:
    bin/bookingClient -server_addr="localhost:8080" -health_check_test=true -credentials_file="./cred.txt"
    
  • CheckAvailability yöntemine yapılan test çağrıları:
    bin/bookingClient -server_addr="localhost:8080" -check_availability_test=true -availability_feed="./avail.json" -credentials_file="./cred.txt"
    
  • CreateReservation ve UpdateReservation yöntemlerine yapılan çağrıları test edin:
    bin/bookingClient -server_addr="localhost:8080" -booking_test=true -availability_feed="./avail.json" -credentials_file="./cred.txt"
    

Kendi Rezervasyon Sunucunuzu uygularken, tüm testlerin başarılı olması için (-all_tests=true) bu sunucuya ek testler (ör.list_bookings_test, rescheduling_test vb.) çalıştırmanız gerekebilir.