คุณสามารถดาวน์โหลด ไคลเอ็นต์ API การอัปเดตแบบเรียลไทม์ของ Java เพื่อช่วยในการเริ่มต้นใช้งาน ข้อมูลอัปเดตแบบเรียลไทม์
วิชาบังคับก่อน:
สร้างบัญชีบริการแล้ว ให้ดาวน์โหลดคีย์ส่วนตัว
เริ่มต้น:
- ดาวน์โหลด ไลบรารีไคลเอ็นต์ Java คลายการบีบอัดไฟล์เพื่อรับ "mapsbooking" ใหม่
-
สร้างโปรเจ็กต์ Java ใน IDE ของคุณ ดาวน์โหลดโค้ดตัวอย่าง InventoryUpdate.java และ BookingNotification.java จากที่เก็บนี้
git clone https://maps-booking.googlesource.com/java-maps-booking-api-example
แล้วนำเข้าไปยังโปรเจ็กต์ Java ภายใต้ไดเรกทอรี src
- ทำสำเนาคีย์ส่วนตัว (ไฟล์ JSON) ไปยังไดเรกทอรี src
- เพิ่มไลบรารีของไคลเอ็นต์ Java ไปยังทรัพยากร Dependency ของโปรเจ็กต์ (รวมไฟล์ jar ไว้ในไดเรกทอรี mapsbooking และ libs-sources)
- ในไฟล์ Java ทั้ง 2 ไฟล์ ให้ทำตามสิ่งที่ต้องทำเพื่อดำเนินการติดตั้งใช้งานให้เสร็จสมบูรณ์
โปรดดูรายละเอียดเพิ่มเติมเกี่ยวกับ REST API ดังต่อไปนี้ ที่นี่
การแก้ปัญหา:
-
เมื่อพยายามสร้างผู้ขาย/บริการใหม่ที่มีรหัสผู้ขายที่มีอยู่หรือ 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” }
- เมื่อทำการเรียกฟังก์ชันทดแทนด้วย ID ผู้ขายที่ไม่ถูกต้อง หรือ serviceId การโทรจะไม่ส่งข้อความแสดงข้อผิดพลาด นั่นเป็นเพราะ การเปลี่ยนแปลงสล็อตความพร้อมใช้งานผ่าน RTU รองรับการดำเนินการที่ไม่ได้ดำเนินการตามคำสั่งและ ดังนั้นจึงไม่เชื่อมโยงกับ sellersId หรือรหัสบริการ อย่างไรก็ตาม สล็อต ในคำขอจะไม่แสดงในเวอร์ชันที่ใช้งานจริงเนื่องจาก MerchantId หรือรหัสบริการ หากต้องการทำให้ช่องโฆษณาแสดงได้ โปรดเพิ่มพารามิเตอร์ ไม่มีข้อมูลผู้ขายหรือบริการผ่าน RTU หรือฟีด
- ในฟังก์ชันการอัปเดตทั้งหมด พารามิเตอร์ "updateMask" ต้องอยู่ใน FieldMask จะระบุช่องที่จะอัปเดต API คือ จำเป็นต้องเปลี่ยนเฉพาะค่าในช่องตามที่ระบุไว้ในมาสก์เท่านั้น และปล่อยให้คนอื่นๆ ไม่แตะต้อง หากคุณส่งสตริง updateMask ที่ไม่ถูกต้อง การอัปเดตจะไม่มีผล หากไม่มีมาสก์ของช่องในการอัปเดต การดำเนินการนี้จะมีผลกับทุกฟิลด์ (เสมือนว่ามาสก์ฟิลด์ทั้งหมดมี ที่ระบุ) หากต้องการอัปเดตทุกฟิลด์ เพียงแค่ตั้งค่า UpdateMask ว่างเปล่า
- ช่องใดๆ ที่มีค่าเป็น 0 จะไม่แสดงในคำตอบ