您可以下載我們的 Java 即時更新 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 用戶端程式庫新增至專案的依附元件 (包括「mapsbooking」和「libs-sources」目錄下的 jar 檔案)。
- 在兩個 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” }
- 以無效的 merchantId 或 serviceId 時,呼叫不會擲回錯誤訊息。這是因為 透過 RTUs 對供應時段所做的變更支援順序外的執行作業 因此不會與 businessId 或 serviceId 建立關聯。不過 請求中的 businessId 或 serviceId。如要讓該版位放送,請新增 RTU 或動態饋給缺少商家或服務。
- 在所有更新函式中,「updateMask」參數都必須位於 FieldMask 格式用於指定要更新的欄位。API 採用 因為只需要變更遮罩中指定的欄位值 讓另一半保持不變如果傳送錯誤的 updateMask 字串, 更新不會生效。如果更新時沒有欄位遮罩, 這項作業會套用到所有欄位 (就像所有欄位的欄位遮罩都有 )。因此,如要更新所有欄位,只要設定 updateMask 空白。
- 如果欄位值為零,就不會顯示在回應中。