您可以下載 Java Realtime 更新 API 用戶端,開始導入即時更新。
必備條件:
建立服務帳戶,並下載私密金鑰。
開始使用:
- 下載 Java 用戶端程式庫來解壓縮檔案,以取得「mapsbooking」套件。
-
在 IDE 中建立 Java 專案,並下載存放區中的程式碼範例 InventoryUpdate.java 和 BookingNotification.java:
git clone https://maps-booking.googlesource.com/java-maps-booking-api-example
並匯入 src 目錄下的 Java 專案。
- 將私密金鑰 (JSON 檔案) 複製到 src 目錄。
- 將 Java 用戶端程式庫新增至專案的依附元件 (將 jar 檔案加入 mapsbooking 和 libs-sources 目錄下)。
- 在兩個 Java 檔案中,按照 TODO 完成實作
如要進一步瞭解 REST API,請參閱這篇文章。
疑難排解:
-
嘗試使用現有的 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” }
- 使用無效的 businessId 或 serviceId 進行取代可用性呼叫時,呼叫不會擲回錯誤訊息。這是因為透過 RTU 變更可用性運算單元時,可支援順序有誤的執行功能,因此並未與 businessId 或 serviceId 建立關聯。不過,由於 merchantId 或 serviceId 無效,因此要求中的運算單元不會顯示於實際工作環境中。如果要提供運算單元,請透過 RTU 或動態饋給新增缺少的商家或服務。
- 在所有更新函式中,「update 遮罩」參數必須採用 FieldMask 格式,才能指定要更新的欄位。此 API 只需要變更遮罩中指定的欄位值,其他值則不受影響。如果您傳遞的 update 遮罩 字串有誤,更新就不會生效。更新時,如果欄位遮罩不存在,作業就會套用到所有欄位,就像所有欄位的欄位遮罩一樣。因此,如要更新所有欄位,請將 update 遮罩 設為空白,
- 回應中不會顯示任何值為任何欄位。