Node.js용 예약 서버 스켈레톤

이것은 참조 구현입니다 표준 통합을 위한 API v3 예약 서버 Node.js 기반

기본 요건

다음 설치 필요:

시작하기

예약 서버는 요청 없이 표준 Node.js를 사용하여 구현됩니다. 설명 목적의 추가 라이브러리 또는 프레임워크를 제공합니다. 만약 다른 프레임워크를 사용하는 경우 이 구현을 쉽게 변경할 수 있습니다. Express.js, MEAN.js 또는 원하는 다른 Node.js 기반 프레임워크를 사용할 수 있습니다.

또한 구현은 프로토콜 버퍼 라이브러리를 사용하지 않고 간단한 JSON 직렬화와 JSON.parse() 및 JSON.stringify()를 사용합니다. 메서드를 참조하세요.

다음 명령어를 실행하여 프로젝트를 다운로드합니다.

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

전체 코드베이스는 다음 두 개의 JavaScript 파일로만 구성됩니다.

  • Bookingserver.js: 인증을 포함한 HTTP 서버 및 요청 처리 로직
  • apiv3methods.js - API v3 인터페이스를 구현하는 메서드

파일을 다운로드한 후 다음을 실행하여 예약 서버를 시작할 수 있습니다. 명령어:

node bookingserver.js

스켈레톤은 모든 수신 및 발신 요청을 콘솔에 기록하므로 추적 목적으로 실행을 모니터링할 수 있습니다.

코드 변경이나 디버깅을 위해 IDE가 필요한 경우 Visual Studio Code 또는 기타 수정할 수 있습니다 다음에서 예약server.js를 시작하여 프로젝트를 디버그합니다. Node.js 환경을 만들고 필요에 따라 중단점을 설정합니다.

예약 서버 테스트

다운로드 예약 테스트 유틸리티. 설치하려면 제공된 설치 안내를 따르세요. 지침을 참조하세요.

테스트의 경우 사용자 인증 정보를 저장할 텍스트 파일을 만들어야 합니다. 사용자 이름과 비밀번호를 한 줄로 입력합니다(예: 파일). 파일 이름을 cred.txt로 지정했습니다.

사용자 이름:비밀번호

또한 테스트 판매자를 위한 이용 가능 여부 피드의 로컬 사본이 필요합니다. 아래 샘플 명령어에서 이용 가능 여부 피드는 어베일.json입니다.

이제 다음 명령어를 사용하여 예약 서버를 테스트할 수 있습니다.

  • HealthCheck 메서드 호출을 테스트합니다.
    bin/bookingClient -server_addr="localhost:8080" -health_check_test=true -credentials_file="./cred.txt"
    
  • CheckAvailability 메서드 호출을 테스트합니다.
    bin/bookingClient -server_addr="localhost:8080" -check_availability_test=true -availability_feed="./avail.json" -credentials_file="./cred.txt"
    
  • CreateBooking 및 UpdateBooking 메서드 호출을 테스트합니다.
    bin/bookingClient -server_addr="localhost:8080" -booking_test=true -availability_feed="./avail.json" -credentials_file="./cred.txt"
    

자체 예약 서버를 구현할 때 다음을 실행해야 할 수 있습니다. 이에 대한 추가 테스트 (예: list_bookings_test, rescheduling_test 등) 모든 테스트를 통과 (-all_tests=true)하는 것을 목표로 합니다.