本指南說明如何將使用 Directions API 或 Distance Matrix API 的應用程式遷移至使用 Routes API。如要進一步瞭解 Routes API,請參閱產品總覽。
更新 REST API 端點
將程式碼更新為使用新的 Routes API 端點
從 Directions API
Directions API | https://maps.googleapis.com/maps/api/directions/outputFormat?parameters |
Routes API | https://routes.googleapis.com/directions/v2:computeRoutes |
從 Distance Matrix API
Distance Matrix API | https://maps.googleapis.com/maps/api/distancematrix/outputFormat?parameters |
Routes API | https://routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix |
轉換網址參數以使用 HTTPS 要求主體
使用 Directions API 和 Distance Matrix API 時,您可以將設定屬性做為網址參數傳遞至 HTTP GET
要求。以 Directions API 為例:
https://maps.googleapis.com/maps/api/directions/outputFormat?parameters
您會使用 Routes API,將參數當做 HTTP POST
要求的一部分來傳入要求主體或標頭中。如需範例,請參閱:
將以折線編碼的路線控點轉換成位置路線控點
您可以在 Directions API 中將路線控點指定為編碼折線,以便在網址限制 (16384 個字元) 內處理大量路線控點。由於路線控點可在 REST 或 gRPC 要求主體中做為經緯度座標,因此不必在 Routes API 中使用。如需範例,請參閱「計算路線矩陣」文件中的 HTTP 範例,或參閱「指定中繼路線控點」文件中的定義中繼路線控點。
轉換參數
下表列出 Directions API 和 Distance Matrix API 中經過重新命名或修改的參數,或是 Google Analytics (分析) 版本不支援的參數。如果您使用的是這些參數,請更新程式碼。
要求參數轉換
Directions 或 Distance Matrix 參數 | Routes API 參數 | 附註 |
---|---|---|
alternatives |
computeAlternativeRoutes |
|
arrival_time |
arrivalTime |
僅適用於 TRANSIT 模式,不適用於 departureTime 。 |
avoid |
routeModifiers |
|
departure_time |
departureTime |
無法與 arrivalTime 同時使用。 |
language |
languageCode |
僅適用於 Compute 路徑。 |
mode |
travelMode |
新增對 |
region |
regionCode |
|
traffic_model |
trafficModel |
瞭解詳情 |
transit_mode |
"travelMode": "TRANSIT" |
在 Directions API 中,系統會將相同交通方式 (例如步行或大眾運輸) 的每段路線視為單一步驟,而該交通方式的個別路線則會是子步驟。相對地,在 Routes API 中,步驟統一是所有移動類型的導覽指示。因此每個導覽指示都有一個步驟。針對單一交通方式的多個步驟,Routes API 會在「stepsOverview」中提供含有該交通方式步驟摘要的中繼資料。如要要求這項中繼資料,請使用「routes.legs.stepsOverview」欄位遮罩。瞭解詳情。 |
transit_routing_preference |
transitRoutingPreference |
瞭解詳情 |
units |
不適用於路線矩陣。 | |
waypoints |
intermediates |
移除對編碼折線的支援。 |
路線控點的 optimize=true |
"optimizeWaypointOrder": "true" |
瞭解詳情 |
回應參數轉換
Directions 或 Distance Matrix 參數 | Routes API 參數 | 附註 |
---|---|---|
copyrights |
未包含在回應中。向使用者顯示結果時,您必須加入以下陳述式:
例如:
|
|
distance |
distanceMeters |
距離只能以公尺為單位顯示。 |
duration_in_traffic |
duration |
已在 Routes API 中移除,請使用 duration 。 |
status |
不適用。請使用 HTTP 回應代碼來處理 API 回報的錯誤。詳情請參閱「處理要求錯誤」一文。 | |
geocoded_waypoints |
geocoding_results |
僅適用於 Compute 路徑。僅包含指定為地址的路線控點的地理編碼回應資訊。 |
bounds |
viewport |
|
legs.end_address |
不適用。 | |
legs.start_address |
不適用。 | |
overview_polyline |
折線 | |
summary |
description |
|
waypoint_order |
optimizedIntermediateWaypointIndex |