Routes API 提升了計算路線、距離和行程時間的效能,因此建議您取代使用 Directions API 和 Distance Matrix API 的應用程式。Routes API 的大部分功能都與 Directions API 和 Distance Matrix API 回溯相容。
請參閱本指南,瞭解 Routes API 與取代產品的主要差異,以及如何處理必要變更。如要進一步瞭解其他 Routes API 功能,請參閱產品總覽。
主要改善項目
本節說明在應用程式中使用 Routes API 時,可望獲得的幾項強化功能。
提高要求上限
| Routes API Compute Route Matrix |
|
| Distance Matrix API |
|
更快取得要求的回覆
Compute Route Matrix 功能提供下列延遲時間改善項目:
- 在計算完整矩陣之前,接收回應的串流元素。
- 使用欄位遮罩自訂回應詳細資料,只要求所需資料,這項最佳做法也有助於降低成本。
- 強化車流量路線計算,讓您在資料品質和回應時間之間取得平衡。
轉送功能強化
計算路徑功能提供下列路徑強化功能:
- 除了距離和預計到達時間外,還會顯示過路費資訊。
- 雙輪車路線。
- 評估中途停靠點,確保安全。
- 設定路線控點的行進方向和道路側,提高預計抵達時間的準確度。
只要求提供您需要的資料
現在您可以指定要傳回的欄位,縮短處理時間並減少帳單費用。
| Routes API Compute Routes Compute Route Matrix |
要求必須使用欄位遮罩,指定要在回應中傳回的欄位。欄位遮蓋可確保您不會要求不必要的資料,避免不必要的處理時間和帳單費用。 詳情請參閱「選擇要傳回的欄位」。 |
| Directions API Distance Matrix API |
即使應用程式不需要,也會傳回預設欄位清單。這可能會導致不必要的處理時間和帳單費用。 |
車流量的強化路線計算
Routes API 支援三種路線偏好設定,您可以在要求路況資訊時,用來平衡回應延遲時間和資料品質。
詳情請參閱「設定品質與延遲時間」。
TRAFFIC_UNAWARE (預設) |
使用與時間無關的平均流量資料 (而非即時流量資料) 計算路線,因此回覆延遲時間最短。這項設定等同於在 Directions API 和 Distance Matrix API 中不使用車流量。 |
TRAFFIC_AWARE (新) |
即時流量品質經過最佳化,可縮短延遲時間。與 TRAFFIC_AWARE_OPTIMAL 不同,這項設定會套用最佳化功能,大幅降低延遲。這項設定也是 Routes API 的新功能,Directions API 或 Distance Matrix API 沒有對應的設定。 |
TRAFFIC_AWARE_OPTIMAL |
高品質、全面的交通資訊。這項設定會產生最高延遲,相當於 Directions API 和 Distance Matrix API 中的 departure_time 設定。這項偏好設定等同於 maps.google.com 和 Google 地圖行動應用程式使用的模式。 |
路線計算比較
下表比較 Routes API、Directions API 和 Distance Matrix API 服務的路線選項。
| 流量選項 | Routes API | Directions API Distance Matrix API |
延遲時間 |
|---|---|---|---|
| 沒有即時車流量 | TRAFFIC_UNAWARE |
未設定 departure_time 項屬性 |
三種模式中延遲時間最短。 |
| 已套用即時路況 | TRAFFIC_AWARE |
無對應報告 | Routes API 新增了模式。與 延遲時間比 |
| 套用高品質的全面即時車流量資料 | TRAFFIC_AWARE_OPTIMAL |
departure_time 屬性集 |
相當於 maps.google.com 和 Google 地圖行動應用程式使用的模式。 以 Compute Route Matrix 來說,要求中的元素數 (起點數 × 目的地數) 不得超過 100。 |
主要差異
本節將說明 Routes API 與其取代的服務之間的主要差異,以及從現有應用程式中的這些服務遷移時,如何解決這些差異。
呼叫一項服務,而非兩項
| Routes API | 在 API 控制台中,為應用程式啟用一項服務,以便使用 Compute Routes 和 Compute Route Matrix。 詳情請參閱「在 Google API 控制台中設定」。 |
| Directions API Distance Matrix API |
在 API 控制台中,分別啟用 Directions API 和 Distance Matrix API 這兩項服務。 |
使用 HTTPS POST 項要求
| Routes API | 在要求內文或標頭中傳遞參數,做為 HTTP POST 要求的一部分。如需範例,請參閱: - 計算路線 - 計算路線矩陣 |
| Directions API Distance Matrix API |
使用 HTTP GET 要求傳遞網址參數。 |
預計到達時間回覆差異
Routes API 會傳回預計抵達時間,並以不同於 Directions API 和 Distance Matrix API 服務的方式使用 duration 回應屬性,如下表所示。
| 預計到達時間類型 | Routes API | Directions API Distance Matrix API |
|---|---|---|
| 不考慮路況,預計到達時間與時間無關。 | 使用
|
對應於要求中未設定
|
| 考量即時路況的預計到達時間。 | 使用
|
在要求中使用
|
折線路線控點
這項服務支援 POST 要求主體,因此不再受網址字串限制影響,您也不必再將經緯度座標轉換為折線航點。部分 Distance Matrix API 使用者將經緯度點轉換為折線路線控點,解決了要求限制問題。
格式化地址 (反向地理編碼)
Routes API 不會在回應中提供格式化地址。如要取得格式化地址,請使用 Geocoding API,這項 API 專為這個用途而建構,可提供更高品質的結果。
可用的交通方式
與 Directions API 相同,如果路線要求未指定交通方式,Routes API 會使用 DRIVE 做為預設模式。不過,如果要求確實指定了路線的交通方式,Routes API 就不會傳回可用交通方式的陣列,做為要求的替代選項。如果您的應用情境需要這項功能,請提出問題,說明您如何使用這項功能,我們會與您聯絡。
XML 做為回應格式
Routes API 不會以 XML 格式提供回應。網路上有許多 JSON 轉 XML 轉換器,應該能滿足您的需求。