您可以下載 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 用戶端程式庫新增至專案的依附元件 (將 jar 檔案納入「mapsbooking」和 libs-sources 目錄下)。
- 在這兩個 Java 檔案中,按照 TODO 完成實作
如要進一步瞭解 REST API,請按這裡。
疑難排解:
-
嘗試使用現有的 businessId 或 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 建立關聯。不過,由於 businessId 或 serviceId 無效,因此要求中的運算單元將不會在實際工作環境中提供。如要讓運算單元可放送,請透過 RTU 或動態饋給新增缺少的商家或服務。
- 在所有的更新函式中,「updateMask」參數一律為 FieldMask 格式以指定要更新的欄位。API 必須僅變更遮罩中指定的欄位值,其他欄位則維持不變。如果傳遞錯誤的 updateMask 字串,則更新不會生效。如果更新時沒有欄位遮罩,則作業會套用至所有欄位 (如同已指定所有欄位的欄位遮罩)。因此,如要更新所有欄位,只要將 updateMask 設為空白即可。
- 凡是值為 0 的欄位,都不會顯示在回應中。