รหัสพิกัดภูมิศาสตร์ที่มีความแม่นยำมากขึ้น

นักพัฒนาซอฟต์แวร์ในเขตเศรษฐกิจยุโรป (EEA)

เมธอด GeocodeAddress และ SearchDestinations รองรับพารามิเตอร์ effort ที่ไม่บังคับ ซึ่งช่วยให้คุณควบคุมความสมดุลระหว่างเวลาในการตอบสนองและความแม่นยำในการแปลงที่อยู่ได้

แม้ว่าการเข้ารหัสพิกัดภูมิศาสตร์มาตรฐานจะจัดการที่อยู่ไปรษณีย์ที่มีรูปแบบถูกต้องได้ในเวลาไม่ถึงวินาที แต่ข้อมูลที่ผู้ใช้ป้อนในชีวิตจริงมักจะไม่สมบูรณ์ ไม่เป็นทางการ หรือซับซ้อน (เช่น "Flat 4B, Sunrise Apartments, opposite Central Mall, Andheri West, Mumbai" หรือ "where the warriors play, sf") การกำหนดค่าระดับ effort ที่สูงขึ้นจะช่วยให้คุณสั่งให้ Geocoding API ใช้การให้เหตุผลและการแก้ความกำกวมเพิ่มเติมเพื่อแก้ไขที่อยู่ที่ซับซ้อนได้

ระดับความพยายาม

ระบุค่าใดค่าหนึ่งต่อไปนี้สำหรับพารามิเตอร์ effort

ระดับความพยายาม คำอธิบาย เวลาในการตอบสนองปกติ กรณีการใช้งานที่แนะนำ
EFFORT_UNSPECIFIED ค่าเริ่มต้น ทำงานเหมือนกับความพยายาม LOW ต่ำกว่าวินาที การเข้ารหัสพิกัดภูมิศาสตร์มาตรฐานเริ่มต้น
LOW เพิ่มประสิทธิภาพเพื่อให้ได้เวลาตอบกลับที่เร็วที่สุด ไม่ทำการค้นหาแบบขยายหรือการแก้ความกำกวมสำหรับที่อยู่ที่ยาก ต่ำกว่าวินาที การค้นหาแบบอินเทอร์แอกทีฟแบบเรียลไทม์ การตรวจสอบ Address Validation มาตรฐานปริมาณมาก
MEDIUM ให้ทั้งความเร็วและความแม่นยำที่สมดุล คำขอส่วนใหญ่จะแสดงผลด้วยเวลาในการตอบสนองต่ำตามมาตรฐาน สำหรับที่อยู่ที่กำกวมหรือยาก บริการจะใช้การประมวลผลเพิ่มเติมเพื่อปรับปรุงความแม่นยำ ซึ่งอาจใช้เวลาถึง 2-3 วินาที ไม่ถึง 1 วินาทีสำหรับที่อยู่มาตรฐาน และไม่เกิน 2-3 วินาที (≤ 4 วินาที) สำหรับที่อยู่ที่กำกวม เวิร์กโฟลว์ของผู้ใช้แบบอินเทอร์แอกทีฟ (เช่น การยืนยันที่อยู่เมื่อชำระเงิน) ซึ่งผู้ใช้สามารถยอมรับการหยุดชั่วคราวสั้นๆ ได้
HIGH เพิ่มความแม่นยำในการแปลงที่อยู่สำหรับที่อยู่ที่ไม่สมบูรณ์ ไม่เป็นทางการ หรือซับซ้อน เวลาในการตอบกลับอาจนานขึ้นอย่างมาก สูงสุด 20 วินาทีสำหรับที่อยู่ที่ซับซ้อน การประมวลผลเบื้องหลัง, การทำ Batch Geocoding, การจัดส่งด้านโลจิสติกส์ หรือการปรับแต่งที่อยู่หลังการชำระเงินแบบอะซิงโครนัส

ตัวอย่างคำขอ

ค้นหาจุดหมาย (SearchDestinations)

ใส่ช่อง effort ในเนื้อหาคำขอ JSON ของคำขอ POST ไปยัง https://geocode.googleapis.com/v4alpha/geocode/destinations พารามิเตอร์ effort ส่งผลต่อความละเอียดของ addressQuery เป็นหลัก

curl -X POST -d '{
  "addressQuery": {
    "addressQuery": "Flat 4B, Sunrise Apartments, opposite Central Mall, Andheri West, Mumbai"
  },
  "effort": "HIGH"
}' \
-H 'Content-Type: application/json' \
-H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4alpha/geocode/destinations

เข้ารหัสพิกัดภูมิศาสตร์ของที่อยู่ (GeocodeAddress)

ส่งพารามิเตอร์ effort เป็นพารามิเตอร์การค้นหาของ URL ในคำขอ GET ไปยังปลายทาง /v4alpha/ ดังนี้

curl -X GET -H 'Content-Type: application/json' \
-H "X-Goog-Api-Key: API_KEY" \
"https://geocode.googleapis.com/v4alpha/geocode/address/where+the+warriors+play,+sf?effort=MEDIUM"

การลดผลกระทบจากเวลาในการตอบสนอง

เมื่อใช้ความพยายาม MEDIUM หรือ HIGH ในแอปพลิเคชัน การส่งคำขอแบบรอบเดียวเป็นการผสานรวมที่ง่ายที่สุด แต่คำขอในโหมดเหล่านี้อาจทำให้เกิดเวลาในการตอบสนองที่สูงขึ้น ซึ่งอาจทำให้เวิร์กโฟลว์แบบซิงโครนัส แสดงต่อผู้ใช้ และไวต่อเวลาในการตอบสนองล่าช้า

หากต้องการลดผลกระทบของเวลาในการตอบสนองนี้ต่อโฟลว์ผู้ใช้แบบอินเทอร์แอกทีฟ (เช่น การชำระเงินหรือการจอง) คุณสามารถใช้เวิร์กโฟลว์แบบหลายรอบได้ ดังนี้

  1. รอบที่ 1 (แบบอินเทอร์แอกทีฟ): ส่งคำขอที่โหลดแบบซิงโครนัสด้วย effort=LOW (หรือค่าเริ่มต้น) เพื่อตรวจสอบที่อยู่ทันทีโดยมีเวลาในการตอบสนองต่ำกว่าวินาที
  2. รอบที่ 2 (เบื้องหลัง): ส่งคำขอติดตามผลแบบอะซิงโครนัสด้วย effort=MEDIUM หรือ effort=HIGH (เช่น หลังชำระเงินหรือก่อนจัดส่ง) เพื่อแปลงที่อยู่ที่ซับซ้อนเป็นพิกัด ทางเข้า และจุดนำทางที่มีความแม่นยำสูงโดยไม่บล็อกผู้ใช้

ขีดจำกัดการใช้งาน

ในระหว่างระยะการเปิดตัวเวอร์ชันทดลอง (v4alpha) คำขอที่มีการตั้งค่า effort เป็น MEDIUM หรือ HIGH จะมีการจำกัดอัตราคำขอที่เข้มงวดกว่าคำขอมาตรฐาน (LOW) หากแอปพลิเคชันของคุณเกินขีดจำกัดอัตราคำขอเหล่านี้ API จะแสดงข้อผิดพลาด RESOURCE_EXHAUSTED (HTTP 429) หากพบข้อผิดพลาด HTTP 429 หรือต้องการโควต้าที่สูงขึ้นสำหรับ Use Case ของคุณ โปรดติดต่อเราผ่านช่องทางแสดงความคิดเห็น

ความคิดเห็น

นี่เป็นฟีเจอร์ทดลองของ Geocoding API เรายินดีรับฟังความคิดเห็นที่ geocoding-feedback-channel@google.com