Java Booking API 客户端

您可以下载我们的 Java 实时更新 API 客户端,了解如何开始实现实时更新。

前提条件:

创建服务帐号后,请下载您的私钥。

开始使用:

  1. 下载 Java 客户端库并将文件解压缩,以获取“mapsbooking”软件包。
  2. 在 IDE 中创建一个 Java 项目,并从以下代码库中下载示例代码 InventoryUpdate.javaBookingNotification.java

    git clone https://maps-booking.googlesource.com/java-maps-booking-api-example
    

    并将其导入 Java 目录下的 Java 项目中。

  3. 将私钥(JSON 文件)的副本复制到 src 目录。
  4. 将 Java 客户端库添加到项目的依赖项中(在 mapsbookbook 和 libs-sources 目录下添加 jar 文件)。
  5. 在两个 Java 文件中,按照 TODO 完成实现

如需详细了解 REST API,请点击此处

问题排查:

  1. 尝试使用现有 merchantId 或 serviceId 创建新的商家/服务时,您会收到以下错误消息:

    409 Conflict
    {
      “code” : 409,
      “errors” :
        [{
            “domain” : “global”,
            “message” : “Requested entity already exists”,
            “reason” : “alreadyExists”,
            “debugInfo” : “detail: "[ORIGINAL ERROR] generic::already_exists: ...”\n"
        }],
      “message” : “Requested entity already exists”,
      “status” : “ALREADY_EXISTS”
    }
    
  2. 使用无效的 merchantId 或 serviceId 替换可用性调用时,调用不会抛出错误消息。这是因为通过 RTU 对可用性空档进行的更改支持无序执行,因此未与 merchantId 或 serviceId 相关联。但是,由于商家 ID 或服务 ID 无效,因此请求中的槽将不会在生产环境中使用。为使插槽可投放,请通过 RTU 或 Feed 添加缺失的商家或服务。
  3. 在所有更新函数中,参数“updateMask”必须采用 FieldMask 格式,才能指定要更新的字段。该 API 只需要更改掩码中指定的字段的值,而其他字段保持不变。如果您传递了错误的 updateMask 字符串,更新将不会生效。如果更新时不存在字段掩码,操作将应用于所有字段(就好像指定了所有字段的字段掩码一样)。因此,如果您要更新所有字段,只需将 updateMask 设置为空即可。
  4. 任何值为零的字段都不会显示在响应中。