在指定一組終端和中間路線控點後,傳回主要路線和可選的替代路線。
注意:這個方法需要您在輸入中指定回應欄位遮罩。如要提供回應欄位遮罩,可以使用網址參數 $fields
或 fields
,或使用 HTTP/gRPC 標頭 X-Goog-FieldMask
(請參閱可用的網址參數和標頭)。值為以半形逗號分隔的欄位路徑清單。請參閱詳細的說明文件,瞭解如何建構欄位路徑。
例如,在這個方法中:
- 所有可用欄位的欄位遮罩 (供手動檢查):
X-Goog-FieldMask: *
- 路線層級時間長度、距離和折線的欄位遮罩 (實際工作環境設定範例):
X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.polyline.encodedPolyline
Google 不建議使用萬用字元 (*
) 回應欄位遮罩,或在頂層指定欄位遮罩 (routes
),因為:
- 只選取您需要的欄位有助於我們的伺服器節省運算週期,讓我們以更短的延遲時間將結果傳回給您。
- 只選取實際工作中所需的欄位,即可確保延遲時間穩定。我們日後可能會新增更多回應欄位,而這些新欄位可能需要額外的運算時間。如果您選取所有欄位,或是選取頂層的所有欄位,系統會自動將新增的任何欄位納入回應,因此可能會導致效能降低。
- 只選取所需欄位,可縮小回應大小,進而提高網路傳輸量。
HTTP 要求
POST https://routespreferred.googleapis.com/v1:computeRoutes
這個網址使用 gRPC 轉碼語法。
要求主體
要求主體的資料會採用以下結構:
JSON 表示法 |
---|
{ "origin": { object ( |
欄位 | |
---|---|
origin |
必要欄位。來源路線控點。 |
destination |
必要欄位。目的地路標。 |
intermediates[] |
選用設定。沿路 (不含終點) 的路線控點組合,用於停靠或經過。最多支援 25 個中繼路線控點。 |
travel |
選用設定。指定交通方式。 |
routing |
選用設定。指定計算路線的方式。伺服器會嘗試使用所選的路由偏好設定來計算路徑。如果路由偏好設定導致錯誤或延遲時間過長,系統會傳回錯誤。只有在 |
polyline |
選用設定。指定您對折線品質的偏好設定。 |
polyline |
選用設定。指定折線的偏好編碼。 |
departure |
選用設定。出發時間。如果您未設定這個值,則預設值為您提出要求的時間。如果您將這個值設為已發生的時間,要求就會失敗。 RFC3339 世界標準時間「Zulu」格式的時間戳記,精確度達奈秒單位,最多九個小數位數。例如 |
compute |
選用設定。指定是否要計算路線以外的替代路徑。系統不會為具有中繼路線控點的要求傳回替代路線。 |
route |
選用設定。一組會影響路徑計算方式的條件。 |
language |
選用設定。BCP-47 語言代碼,例如「en-US」或「sr-Latn」。詳情請參閱「Unicode 語言代碼」。如需支援語言清單,請參閱「程式語言支援」一文。如未提供這個值,系統會根據路線要求的位置推斷顯示語言。 |
units |
選用設定。指定顯示欄位的測量單位。這包括 |
optimize |
如果將 optimizeWaypointOrder 設為 true,系統會嘗試重新排序指定的中繼路線點,以盡量降低路線的整體成本。如果任何中繼路線控點是透過路線控點,要求就會失敗。使用 |
回應主體
如果成功,回應主體會包含 ComputeRoutesResponse
的執行例項。
授權範圍
需要下列 OAuth 範圍:
https://www.googleapis.com/auth/maps-platform.routespreferred
詳情請參閱 OAuth 2.0 總覽。