预订 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 或 您选择的编辑器在 Node.js 环境,并根据需要设置断点。

测试预订服务器

下载 预订测试实用程序。如需安装,请按照提供的安装程序操作 自述文件中的说明。

对于测试,您需要创建一个文本文件来存储凭据。 在一行内输入您的用户名和密码,例如,在文件中 名为 cred.txt 的文件:

用户名:密码

您还需要为测试商家创建可用性 Feed 的本地副本。 在下面的示例命令中,可用性 Feed 为 avail.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)。