ขณะนี้
เส้นทาง API ที่ต้องการมีให้บริการเฉพาะลูกค้าบางรายเท่านั้น
ติดต่อฝ่ายขายเพื่อดูข้อมูลเพิ่มเติม
Method: computeRouteMatrix
จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน
บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ
รับรายการต้นทางและปลายทาง แล้วแสดงผลสตรีมที่มีข้อมูลเส้นทางสำหรับชุดค่าผสมของต้นทางและปลายทางแต่ละรายการ
หมายเหตุ: วิธีการนี้กำหนดให้คุณระบุมาสก์ช่องคำตอบในอินพุต คุณสามารถระบุฟิลด์มาสก์การตอบกลับได้โดยใช้พารามิเตอร์ของ 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://routespreferred.googleapis.com/v1alpha:computeRouteMatrix
URL ใช้ไวยากรณ์การแปลง gRPC
เนื้อหาของคำขอ
เนื้อหาของคำขอมีข้อมูลที่มีโครงสร้างต่อไปนี้
ช่อง |
origins[] |
object (RouteMatrixOrigin )
ต้องระบุ อาร์เรย์ของต้นทาง ซึ่งกําหนดแถวของเมทริกซ์การตอบสนอง มีข้อจํากัดด้านขนาดหลายประการสําหรับ Cardinality ของต้นทางและปลายทาง ดังนี้
- จำนวนองค์ประกอบ (ต้นทาง × ปลายทาง) ต้องไม่เกิน 625 ไม่ว่าในกรณีใดก็ตาม
- จํานวนองค์ประกอบ (ต้นทาง × ปลายทาง) ต้องไม่เกิน 100 หากตั้งค่า routingPreference เป็น
TRAFFIC_AWARE_OPTIMAL
- จำนวนจุดอ้างอิง (ต้นทาง + ปลายทาง) ที่ระบุเป็น
placeId ต้องไม่เกิน 50
|
destinations[] |
object (RouteMatrixDestination )
ต้องระบุ อาร์เรย์ของปลายทาง ซึ่งจะเป็นตัวกำหนดคอลัมน์ของเมทริกซ์การตอบกลับ
|
travelMode |
enum (RouteTravelMode )
ไม่บังคับ ระบุรูปแบบการเดินทาง
|
routingPreference |
enum (RoutingPreference )
ไม่บังคับ ระบุวิธีคํานวณเส้นทาง เซิร์ฟเวอร์จะพยายามใช้การตั้งค่าเส้นทางที่เลือกไว้เพื่อคำนวณเส้นทาง หากค่ากำหนดการกำหนดเส้นทางทำให้เกิดข้อผิดพลาดหรือเวลาในการตอบสนองที่นานขึ้น ระบบจะแสดงข้อผิดพลาด คุณสามารถระบุตัวเลือกนี้ได้เฉพาะเมื่อ travelMode คือ DRIVE หรือ TWO_WHEELER มิฉะนั้นคำขอจะล้มเหลว
|
departureTime |
string (Timestamp format)
ไม่บังคับ เวลาออกเดินทาง หากไม่ได้ตั้งค่านี้ ค่าเริ่มต้นจะเป็นเวลาที่ส่งคำขอ หากคุณตั้งค่านี้เป็นเวลาที่ผ่านไปแล้ว คำขอจะดำเนินการไม่สำเร็จ การประทับเวลาจะอยู่ในรูปแบบ RFC3339 UTC "Zulu" ที่มีความละเอียดระดับนาโนวินาทีและมีตัวเลขเศษส่วนสูงสุด 9 หลัก ตัวอย่างเช่น "2014-10-02T15:01:23Z" และ "2014-10-02T15:01:23.045123456Z"
|
เนื้อหาการตอบกลับ
หากสำเร็จ เนื้อหาการตอบกลับจะมีสตรีมของอินสแตนซ์ RouteMatrixElement
รายการ
ขอบเขตการให้สิทธิ์
ต้องใช้ขอบเขต OAuth ต่อไปนี้
https://www.googleapis.com/auth/maps-platform.routespreferred
สำหรับข้อมูลเพิ่มเติม โปรดดูที่ภาพรวมของ OAuth 2.0
เนื้อหาของหน้าเว็บนี้ได้รับอนุญาตภายใต้ใบอนุญาตที่ต้องระบุที่มาของครีเอทีฟคอมมอนส์ 4.0 และตัวอย่างโค้ดได้รับอนุญาตภายใต้ใบอนุญาต Apache 2.0 เว้นแต่จะระบุไว้เป็นอย่างอื่น โปรดดูรายละเอียดที่นโยบายเว็บไซต์ Google Developers Java เป็นเครื่องหมายการค้าจดทะเบียนของ Oracle และ/หรือบริษัทในเครือ
อัปเดตล่าสุด 2025-08-29 UTC
[null,null,["อัปเดตล่าสุด 2025-08-29 UTC"],[[["\u003cp\u003eTakes a list of origins and destinations, returning route information for each combination.\u003c/p\u003e\n"],["\u003cp\u003eRequires specifying a response field mask for optimized performance and data selection.\u003c/p\u003e\n"],["\u003cp\u003eAccepts parameters for travel mode, routing preference, and departure time.\u003c/p\u003e\n"],["\u003cp\u003eReturns a stream of \u003ccode\u003eRouteMatrixElement\u003c/code\u003e instances containing route details.\u003c/p\u003e\n"],["\u003cp\u003eRequires the \u003ccode\u003ehttps://www.googleapis.com/auth/maps-platform.routespreferred\u003c/code\u003e OAuth scope for authorization.\u003c/p\u003e\n"]]],["This method computes route information for multiple origin-destination pairs. It requires a `POST` request to `computeRouteMatrix` with lists of `origins` and `destinations` in the request body. A field mask must be included to specify which data fields to return, with `status` being critical. Optional parameters include `travelMode`, `routingPreference`, and `departureTime`. The response is a stream of `RouteMatrixElement` instances, and the method requires a specific OAuth scope for authorization.\n"],null,["# Method: computeRouteMatrix\n\n- [HTTP request](#body.HTTP_TEMPLATE)\n- [Request body](#body.request_body)\n - [JSON representation](#body.request_body.SCHEMA_REPRESENTATION)\n- [Response body](#body.response_body)\n- [Authorization scopes](#body.aspect)\n\nTakes in a list of origins and destinations and returns a stream containing route information for each combination of origin and destination.\n\n**NOTE:** This method requires that you specify a response field mask in the input. You can provide the response field mask by using the URL parameter `$fields` or `fields`, or by using the HTTP/gRPC header `X-Goog-FieldMask` (see the [available URL parameters and headers](https://cloud.google.com/apis/docs/system-parameters). The value is a comma separated list of field paths. See this detailed documentation about [how to construct the field paths](https://github.com/protocolbuffers/protobuf/blob/master/src/google/protobuf/field_mask.proto).\n\nFor example, in this method:\n\n- Field mask of all available fields (for manual inspection): `X-Goog-FieldMask: *`\n- Field mask of route durations, distances, element status, condition, and element indices (an example production setup): `X-Goog-FieldMask:\n originIndex,destinationIndex,status,condition,distanceMeters,duration`\n\nIt is critical that you include `status` in your field mask as otherwise all messages will appear to be OK. Google discourages the use of the wildcard (`*`) response field mask, because:\n\n- Selecting only the fields that you need helps our server save computation cycles, allowing us to return the result to you with a lower latency.\n- Selecting only the fields that you need in your production job ensures stable latency performance. We might add more response fields in the future, and those new fields might require extra computation time. If you select all fields, or if you select all fields at the top level, then you might experience performance degradation because any new field we add will be automatically included in the response.\n- Selecting only the fields that you need results in a smaller response size, and thus higher network throughput.\n\n### HTTP request\n\n`POST https://routespreferred.googleapis.com/v1alpha:computeRouteMatrix`\n\nThe URL uses [gRPC Transcoding](https://google.aip.dev/127) syntax.\n\n### Request body\n\nThe request body contains data with the following structure:\n\n| JSON representation |\n|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| ``` { \"origins\": [ { object (/maps/documentation/routes_preferred/reference/rest/Shared.Types/ComputeRouteMatrixRequest#RouteMatrixOrigin) } ], \"destinations\": [ { object (/maps/documentation/routes_preferred/reference/rest/Shared.Types/ComputeRouteMatrixRequest#RouteMatrixDestination) } ], \"travelMode\": enum (/maps/documentation/routes_preferred/reference/rest/Shared.Types/RouteTravelMode), \"routingPreference\": enum (/maps/documentation/routes_preferred/reference/rest/Shared.Types/RoutingPreference), \"departureTime\": string } ``` |\n\n| Fields ||\n|-----------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `origins[]` | `object (`[RouteMatrixOrigin](/maps/documentation/routes_preferred/reference/rest/Shared.Types/ComputeRouteMatrixRequest#RouteMatrixOrigin)`)` Required. Array of origins, which determines the rows of the response matrix. Several size restrictions apply to the cardinality of origins and destinations: - The number of elements (origins × destinations) must be no greater than 625 in any case. - The number of elements (origins × destinations) must be no greater than 100 if routingPreference is set to `TRAFFIC_AWARE_OPTIMAL`. - The number of waypoints (origins + destinations) specified as `placeId` must be no greater than 50. |\n| `destinations[]` | `object (`[RouteMatrixDestination](/maps/documentation/routes_preferred/reference/rest/Shared.Types/ComputeRouteMatrixRequest#RouteMatrixDestination)`)` Required. Array of destinations, which determines the columns of the response matrix. |\n| `travel``Mode` | `enum (`[RouteTravelMode](/maps/documentation/routes_preferred/reference/rest/Shared.Types/RouteTravelMode)`)` Optional. Specifies the mode of transportation. |\n| `routing``Preference` | `enum (`[RoutingPreference](/maps/documentation/routes_preferred/reference/rest/Shared.Types/RoutingPreference)`)` Optional. Specifies how to compute the route. The server attempts to use the selected routing preference to compute the route. If the routing preference results in an error or an extra long latency, an error is returned. You can specify this option only when the `travelMode` is `DRIVE` or `TWO_WHEELER`, otherwise the request fails. |\n| `departure``Time` | `string (`[Timestamp](https://protobuf.dev/reference/protobuf/google.protobuf/#timestamp)` format)` Optional. The departure time. If you don't set this value, this defaults to the time that you made the request. If you set this value to a time that has already occurred, the request fails. A timestamp in RFC3339 UTC \"Zulu\" format, with nanosecond resolution and up to nine fractional digits. Examples: `\"2014-10-02T15:01:23Z\"` and `\"2014-10-02T15:01:23.045123456Z\"`. |\n\n### Response body\n\nIf successful, the response body contains a stream of [RouteMatrixElement](/maps/documentation/routes_preferred/reference/rest/Shared.Types/RouteMatrixElement) instances.\n\n### Authorization scopes\n\nRequires the following OAuth scope:\n\n- `https://www.googleapis.com/auth/maps-platform.routespreferred`\n\nFor more information, see the [OAuth 2.0 Overview](https://developers.google.com/identity/protocols/OAuth2)."]]