JAVA REST

您可以下載 Java 即時更新 API 用戶端,立即開始實作即時更新。

必備條件:

已建立服務帳戶,請下載私密金鑰。

開始使用:

  1. 下載 Java 用戶端程式庫解壓縮檔案,取得「mapsbooking」套件。
  2. 在 IDE 中建立 Java 專案,並從這個存放區下載程式碼範例 InventoryUpdate.javaBookingNotification.java

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

    然後將其匯入「src」目錄下的 Java 專案

  3. 將私密金鑰 (JSON 檔案) 副本複製到 src 目錄。
  4. 將 Java 用戶端程式庫新增至專案的依附元件 (將 jar 檔案納入「mapsbooking」和 libs-sources 目錄下)。
  5. 在這兩個 Java 檔案中,按照 TODO 完成實作

如要進一步瞭解 REST API,請按這裡

疑難排解:

  1. 嘗試使用現有的 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”
    }
    
  2. 使用無效的 businessId 或 serviceId 取代供應情形呼叫時,呼叫不會擲回錯誤訊息。這是因為透過 RTU 變更供應時段的功能時,系統支援脫序執行作業,因此不會與 businessId 或 serviceId 建立關聯。不過,由於 businessId 或 serviceId 無效,因此要求中的運算單元將不會在實際工作環境中提供。如要讓運算單元可放送,請透過 RTU 或動態饋給新增缺少的商家或服務。
  3. 在所有的更新函式中,「updateMask」參數一律為 FieldMask 格式以指定要更新的欄位。API 必須僅變更遮罩中指定的欄位值,其他欄位則維持不變。如果傳遞錯誤的 updateMask 字串,則更新不會生效。如果更新時沒有欄位遮罩,則作業會套用至所有欄位 (如同已指定所有欄位的欄位遮罩)。因此,如要更新所有欄位,只要將 updateMask 設為空白即可。
  4. 凡是值為 0 的欄位,都不會顯示在回應中。