คุณคำนวณระยะทางและระยะเวลาของเส้นทางสำหรับต้นทางและปลายทางหลายรายการได้โดยใช้เมธอด ComputeRouteMatrix
ของ Routes Preferred API ComputeRouteMatrix
รองรับทั้งการเรียกใช้ gRPC แบบสตรีมมิงและการเรียกใช้ REST HTTP
เมื่อพิจารณาจากรายการคู่ต้นทางและปลายทาง ComputeRouteMatrix
จะคำนวณระยะทางและระยะเวลาของเส้นทางที่เริ่มต้นจากต้นทางแต่ละแห่งและจบที่จุดหมายแต่ละแห่ง องค์ประกอบแต่ละอย่างของสตรีมจะสอดคล้องกับ
ข้อมูลของแต่ละเส้นทาง
เมธอด ComputeRouteMatrix
มีข้อดีมากกว่าบริการ Distance Matrix
- การสตรีมช่วยให้สามารถแสดงผลองค์ประกอบได้ก่อนที่จะคำนวณเมทริกซ์ทั้งหมด ทำให้เวลาในการตอบสนองลดลง
ComputeRouteMatrix
มีตัวเลือกการคำนวณการเข้าชมแบบละเอียด ซึ่งช่วยให้คุณตัดสินใจทดแทนเวลาในการตอบสนองที่มีคุณภาพได้- คำขอจะทำงานในลำดับความสำคัญที่สูงกว่าภายในโครงสร้างพื้นฐานของ Google ซึ่งส่งผลให้ความพร้อมใช้งานสูงขึ้น
- คุณสามารถระบุข้อมูลทิศทาง (เส้นทางการเดินทาง) และข้อมูลด้านข้างของถนนสำหรับจุดอ้างอิงได้
- คุณขอให้ส่งกลับข้อมูลค่าผ่านทาง พร้อมระยะทางและเวลาถึงโดยประมาณได้
เปิดใช้เมธอด ComputeRouteMatrix
ก่อนที่คุณจะสามารถใช้เมธอด ComputeRouteMatrix
ในโค้ดได้ คุณต้องเปิดใช้งานก่อน ดูข้อมูลเพิ่มเติมเกี่ยวกับการเปิดใช้เมธอด API ของ Routes Preferred ได้ในการเริ่มต้นใช้งาน
การใช้เมธอด ComputeRouteMatrix
ใช้เมธอด ComputeRouteMatrix
ได้ผ่านปลายทาง Routes Preferred v1
โปรดดูรายละเอียดเพิ่มเติมในเอกสารประกอบต่อไปนี้
ขั้นตอนทั่วไปต่อไปนี้อธิบายวิธีใช้ gRPC เพื่อเรียกใช้เมธอด ComputeRouteMatrix
โปรดตรวจสอบ Protobuffers ที่จำเป็นจากที่เก็บ googleapis ดังนี้
https://github.com/googleapis/googleapis/tree/master/google/maps/routes
โปรดทราบว่าระบบบิลด์บางระบบ เช่น Go อาจดำเนินการให้คุณโดยอัตโนมัติ
สร้างโค้ด Probuffer ที่เกี่ยวข้องโดยใช้ภาษาที่คุณต้องการและชุดเครื่องมือบิลด์
สร้างคำขอ คำขอที่ต้องส่งข้อมูลเมตาที่จำเป็น 2 รายการ คือ
- ต้องตั้งค่า X-Goog-Api-Key เป็นคีย์ API
ต้องตั้งค่า X-Goog-Fieldmask เป็นรายการช่องที่คั่นด้วยคอมมาจากการตอบกลับ ตัวอย่างเช่น X-Goog-FieldMask: originIndex,destinationIndex,duration,distanceMeters,status คุณสามารถใช้อักขระไวลด์การ์ด (*) เพื่อแสดงช่องทั้งหมด แต่เราไม่แนะนำให้ใช้ ใช้อักขระไวลด์การ์ดเพื่อทดสอบและทำความเข้าใจการตอบสนองของ API แต่ให้ระบุช่องที่ต้องการในมาสก์ของช่องอย่างชัดเจนในโค้ดที่ใช้งานจริง
ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีสร้างสตริงมาสก์ของช่องได้ที่ https://github.com/protocolbuffers/protobuf/blob/master/src/google/protobuf/field_mask.proto โปรดทราบว่าการปิดใช้ช่องที่ไม่จำเป็นจะช่วยลดเวลาในการตอบสนองได้เพราะอาจต้องมีการคำนวณเพิ่มเติมในช่องเหล่านั้น แต่เวลาในการตอบสนองจะคงที่หากคุณระบุช่องที่ต้องการและเพิ่มช่องใหม่ที่ต้องคำนวณเพิ่มเติมในภายหลัง
ส่งคำขอไปที่
routespreferred.googleapis.com:443
คุณต้องใช้โปรโตคอล TLS
ดูตัวอย่างการใช้เมธอด ComputeRouteMatrix
ได้ในตัวอย่างการคำนวณ Route Matrix (เบต้า)
ฟีเจอร์เด่นอย่างหนึ่งของเมธอด ComputeRouteMatrix
คืออาจส่งคืนรหัสข้อผิดพลาดสำหรับทั้งสตรีมหรือองค์ประกอบแต่ละรายการก็ได้ ตัวอย่างเช่น การเชื่อมต่อสตรีมจะแสดงข้อผิดพลาดหากคำขอมีรูปแบบไม่ถูกต้อง (เช่น คำขอไม่มีต้นทาง) อย่างไรก็ตาม หากข้อผิดพลาดมีผลกับองค์ประกอบบางรายการของสตรีม (เช่น การตั้งค่ารหัสสถานที่ที่ไม่ถูกต้องสำหรับต้นทาง) เฉพาะองค์ประกอบที่ได้รับผลกระทบจากข้อผิดพลาดดังกล่าวเท่านั้นที่จะมีรหัสข้อผิดพลาด
ทั้งนี้ เราไม่รับประกันว่าองค์ประกอบที่สตรีมส่งคืนมาจะได้รับการส่งคืนในลำดับใดๆ ก็ตาม ด้วยเหตุนี้ แต่ละองค์ประกอบจึงมี origin_index
และ destination_index
สำหรับต้นทางและปลายทางที่ระบุโดยคำขอ ต้นทางของเส้นทางจะเทียบเท่ากับ origins[origin_index]
สำหรับองค์ประกอบนั้นๆ และปลายทางของเส้นทางมีค่าเท่ากับ destinations[destination_index]
อาร์เรย์เหล่านี้ไม่มีการจัดทำดัชนี การจัดเก็บลำดับในรายการต้นทางและปลายทางถือเป็นสิ่งสำคัญ
กำลังคำนวณค่าผ่านทาง
สำหรับข้อมูลเกี่ยวกับการคำนวณค่าผ่านทาง โปรดดูที่คำนวณค่าผ่านทาง
ดูตัวอย่างการคำนวณค่าธรรมเนียมทางพิเศษได้ที่การคำนวณตัวอย่าง Route Matrix