- คำขอ HTTP
- เนื้อความของคำขอ
- เนื้อหาการตอบกลับ
- RouteMatrixOrigin
- RouteMatrixDestination
- ExtraComputation
- RouteMatrixElementCondition
- LocalizedValues
บันทึกรายการต้นทางและปลายทาง แล้วแสดงผลสตรีมที่มีข้อมูลเส้นทางสำหรับชุดค่าผสมของต้นทางและปลายทางแต่ละรายการ
หมายเหตุ: วิธีนี้กำหนดให้คุณต้องระบุมาสก์ช่องคำตอบในอินพุต คุณระบุฟิลด์มาสก์การตอบกลับได้โดยใช้พารามิเตอร์ของ URL $fields
หรือ fields
หรือใช้ส่วนหัว HTTP/gRPC X-Goog-FieldMask
(ดูพารามิเตอร์และส่วนหัวของ URL ที่ใช้ได้) ค่านี้คือรายการเส้นทางฟิลด์ที่คั่นด้วยคอมมา ดูเอกสารประกอบโดยละเอียดเกี่ยวกับวิธีสร้างเส้นทางภาคสนาม
ตัวอย่างเช่น ในวิธีนี้
- ฟิลด์มาสก์ของช่องทั้งหมดที่มี (สำหรับการตรวจสอบด้วยตนเอง):
X-Goog-FieldMask: *
- ฟิลด์มาสก์ของระยะเวลาเส้นทาง ระยะทาง สถานะองค์ประกอบ เงื่อนไข และดัชนีองค์ประกอบ (ตัวอย่างการตั้งค่าเวอร์ชันที่ใช้งานจริง):
X-Goog-FieldMask: originIndex,destinationIndex,status,condition,distanceMeters,duration
คุณจำเป็นต้องใส่ status
ในมาสก์ฟิลด์ ไม่เช่นนั้นข้อความทั้งหมดจะเรียบร้อยดี Google ไม่แนะนำให้ใช้มาสก์ช่องคำตอบที่มีไวลด์การ์ด (*
) เนื่องจากเหตุผลต่อไปนี้
- การเลือกเฉพาะช่องที่คุณต้องการจะช่วยให้เซิร์ฟเวอร์ของเราบันทึกรอบการคำนวณได้ ซึ่งทำให้เราสามารถส่งคืนผลลัพธ์ให้คุณโดยมีเวลาในการตอบสนองที่น้อยลง
- การเลือกเฉพาะช่องที่จำเป็นในงานเวอร์ชันที่ใช้งานจริงจะช่วยให้เวลาในการตอบสนองที่เสถียร เราอาจเพิ่มช่องคำตอบในอนาคต และช่องใหม่เหล่านั้นอาจต้องใช้เวลาในการคำนวณเพิ่มเติม หากเลือกทุกช่องหรือเลือกช่องทั้งหมดที่ระดับบนสุด ประสิทธิภาพอาจลดลงเนื่องจากช่องใหม่ที่เราเพิ่มจะรวมอยู่ในคำตอบโดยอัตโนมัติ
- การเลือกเฉพาะฟิลด์ที่คุณต้องการจะให้ผลลัพธ์ที่มีขนาดการตอบกลับที่เล็กลง และทำให้อัตราการส่งข้อมูลของเครือข่ายสูงขึ้น
คำขอ HTTP
POST https://routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix
URL ใช้ไวยากรณ์การแปลง gRPC
เนื้อหาของคำขอ
เนื้อหาของคำขอมีข้อมูลซึ่งมีโครงสร้างต่อไปนี้
การแสดง JSON |
---|
{ "origins": [ { object ( |
ช่อง | |
---|---|
origins[] |
ต้องระบุ อาร์เรย์ของต้นทาง ซึ่งกำหนดแถวของเมทริกซ์การตอบกลับ มีข้อจำกัดด้านขนาดหลายประการที่มีผลต่อ Cardinality ของต้นทางและปลายทาง ดังนี้
|
destinations[] |
ต้องระบุ อาร์เรย์ของปลายทาง ซึ่งจะเป็นตัวกำหนดคอลัมน์ของเมทริกซ์การตอบกลับ |
travelMode |
ไม่บังคับ ระบุรูปแบบการเดินทาง |
routingPreference |
ไม่บังคับ ระบุวิธีคํานวณเส้นทาง เซิร์ฟเวอร์พยายามใช้ค่ากำหนดการกำหนดเส้นทางที่เลือกไว้เพื่อคำนวณเส้นทาง หากค่ากำหนดการกำหนดเส้นทางทำให้เกิดข้อผิดพลาดหรือใช้เวลากับเวลาในการตอบสนองนานขึ้น ระบบจะแสดงข้อผิดพลาด คุณจะระบุตัวเลือกนี้ได้เฉพาะเมื่อ |
departureTime |
ไม่บังคับ เวลาออกเดินทาง หากไม่ตั้งค่านี้ ค่าเริ่มต้นจะเป็นเวลาที่คุณส่งคำขอ หมายเหตุ: คุณจะระบุ การประทับเวลาจะอยู่ในรูปแบบ RFC3339 UTC "Zulu" ที่มีความละเอียดระดับนาโนวินาทีและมีตัวเลขที่เป็นเศษส่วนได้สูงสุด 9 หลัก ตัวอย่าง: |
arrivalTime |
ไม่บังคับ เวลาถึง หมายเหตุ: ตั้งค่าได้เมื่อตั้งค่า การประทับเวลาจะอยู่ในรูปแบบ RFC3339 UTC "Zulu" ที่มีความละเอียดระดับนาโนวินาทีและมีตัวเลขที่เป็นเศษส่วนได้สูงสุด 9 หลัก ตัวอย่าง: |
languageCode |
ไม่บังคับ รหัสภาษา BCP-47 เช่น "en-US" หรือ "sr-Latn" ดูข้อมูลเพิ่มเติมได้ที่ตัวระบุภาษา Unicode โปรดดูรายการภาษาที่รองรับได้ที่การสนับสนุนภาษา หากไม่ระบุค่านี้ ระบบจะอนุมานภาษาที่แสดงจากตําแหน่งของต้นทางแรก |
regionCode |
ไม่บังคับ รหัสภูมิภาคที่ระบุเป็นค่า ccTLD ("โดเมนระดับบนสุด") แบบ 2 อักขระ ดูข้อมูลเพิ่มเติมได้ที่โดเมนระดับบนสุดตามรหัสประเทศ |
units |
ไม่บังคับ ระบุหน่วยวัดสำหรับช่องแสดงผล |
extraComputations[] |
ไม่บังคับ รายการการคำนวณเพิ่มเติมที่อาจนำไปใช้ในการดำเนินการตามคำขอ หมายเหตุ: การคำนวณเพิ่มเติมเหล่านี้อาจแสดงช่องเพิ่มเติมในคำตอบ ต้องระบุช่องเพิ่มเติมเหล่านี้ในมาสก์ของช่องที่จะส่งคืนในการตอบกลับ |
trafficModel |
ไม่บังคับ ระบุสมมติฐานที่จะใช้เมื่อคำนวณเวลาในการรับส่ง การตั้งค่านี้ส่งผลต่อค่าที่แสดงผลในช่องระยะเวลาใน |
transitPreferences |
ไม่บังคับ ระบุค่ากำหนดที่มีผลต่อเส้นทางที่แสดงผลสำหรับ |
เนื้อหาการตอบกลับ
มีข้อมูลเส้นทางที่คำนวณสำหรับคู่ต้นทาง/ปลายทางใน API v2.computeRouteMatrix คุณสตรีมโปรโตคอลนี้ไปยังไคลเอ็นต์ได้
หากทำสำเร็จ เนื้อหาการตอบกลับจะมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้
การแสดง JSON |
---|
{ "status": { object ( |
ช่อง | |
---|---|
status |
รหัสสถานะข้อผิดพลาดขององค์ประกอบนี้ |
condition |
ระบุว่าพบเส้นทางหรือไม่ ไม่ขึ้นอยู่กับสถานะ |
distanceMeters |
ระยะทางในการเดินทางของเส้นทางในหน่วยเมตร |
duration |
ระยะเวลาที่ต้องใช้ในการนำทาง หากคุณตั้งค่า ระยะเวลาเป็นวินาทีที่มีเลขเศษส่วนไม่เกิน 9 หลัก ลงท้ายด้วย " |
staticDuration |
ระยะเวลาเดินทางตามเส้นทางโดยไม่คํานึงถึงสภาพการจราจร ระยะเวลาเป็นวินาทีที่มีเลขเศษส่วนไม่เกิน 9 หลัก ลงท้ายด้วย " |
travelAdvisory |
ข้อมูลเพิ่มเติมเกี่ยวกับเส้นทาง ตัวอย่างเช่น ข้อมูลข้อจำกัดและข้อมูลค่าผ่านทาง |
fallbackInfo |
ในบางกรณี เมื่อเซิร์ฟเวอร์ไม่สามารถคำนวณเส้นทางด้วยค่ากำหนดที่ระบุสำหรับคู่ต้นทาง/ปลายทางเฉพาะนี้ เซิร์ฟเวอร์อาจกลับไปใช้การคำนวณโหมดอื่น เมื่อมีการใช้โหมดสำรอง ช่องนี้จะมีข้อมูลโดยละเอียดเกี่ยวกับการตอบกลับสำรอง มิเช่นนั้นระบบจะไม่ได้ตั้งค่าช่องนี้ |
localizedValues |
รูปแบบข้อความแสดงพร็อพเพอร์ตี้ของ |
originIndex |
ดัชนีแบบศูนย์ของต้นทางในคำขอ |
destinationIndex |
ดัชนีแบบศูนย์ของปลายทางในคำขอ |
RouteMatrixOrigin
ต้นทางเดียวสำหรับ ComputeRouteMatrixRequest
การแสดง JSON |
---|
{ "waypoint": { object ( |
ช่อง | |
---|---|
waypoint |
ต้องระบุ จุดอ้างอิงต้นทาง |
routeModifiers |
ไม่บังคับ ตัวปรับแต่งสำหรับทุกเส้นทางที่ใช้เป็นต้นทาง |
RouteMatrixDestination
ปลายทางเดียวสำหรับ ComputeRouteMatrixRequest
การแสดง JSON |
---|
{
"waypoint": {
object ( |
ช่อง | |
---|---|
waypoint |
ต้องระบุ จุดอ้างอิงปลายทาง |
ExtraComputation
การคำนวณเพิ่มเติมที่จะดำเนินการในระหว่างดำเนินการตามคำขอ
Enum | |
---|---|
EXTRA_COMPUTATION_UNSPECIFIED |
ไม่ได้ใช้ คำขอที่มีค่านี้จะดำเนินการไม่สำเร็จ |
TOLLS |
ข้อมูลค่าผ่านทางสำหรับองค์ประกอบเมทริกซ์ |
RouteMatrixElementCondition
เงื่อนไขของเส้นทางที่แสดง
Enum | |
---|---|
ROUTE_MATRIX_ELEMENT_CONDITION_UNSPECIFIED |
ใช้เมื่อ status ขององค์ประกอบไม่ถูกต้องเท่านั้น |
ROUTE_EXISTS |
พบเส้นทางและได้กรอกข้อมูลที่เกี่ยวข้องสำหรับองค์ประกอบนี้แล้ว |
ROUTE_NOT_FOUND |
ไม่พบเส้นทาง ช่องที่มีข้อมูลเส้นทาง เช่น distanceMeters หรือ duration จะไม่ได้รับการกรอกในองค์ประกอบ |
LocalizedValues
การนำเสนอข้อความของคุณสมบัติบางอย่าง
การแสดง JSON |
---|
{ "distance": { object ( |
ช่อง | |
---|---|
distance |
ระยะทางในการเดินทางซึ่งแสดงในรูปแบบข้อความ |
duration |
ระยะเวลาที่แสดงในรูปแบบข้อความจะพิจารณาสภาพการจราจร หมายเหตุ: หากไม่ได้ขอข้อมูลการเข้าชม ค่านี้จะเป็นค่าเดียวกับ staticDuration |
staticDuration |
ระยะเวลาที่แสดงในรูปแบบข้อความโดยไม่คํานึงถึงสภาพการจราจร |
transitFare |
ค่าโดยสารจะแสดงในรูปแบบข้อความ |