錯誤
如果發生錯誤,系統會傳回標準格式錯誤回應主體,並將 HTTP 狀態碼設為錯誤狀態。
回應包含單一 error
物件,且該物件包含下列索引鍵:
code
:這與回應的 HTTP 狀態相同。message
:錯誤的簡短說明。status
:指出錯誤性質的狀態碼。
舉例來說,傳送無效的 placeId
參數會傳回以下錯誤:
{ "error": { "code": 400, "message": "\"placeId\" value is malformed: \"aChIJqaknMTeuEmsRUYCD5Wd9ARM\"", "status": "INVALID_ARGUMENT" } }
可能出現的錯誤如下:
程式碼 | 狀態 | 訊息 | 疑難排解 |
---|---|---|---|
400 | INVALID_ARGUMENT |
您所提供的金鑰無效。 | 您的 API 金鑰無效或並未包含在要求中。請確認您已加入整個金鑰,並已為這組金鑰啟用 API。 |
400 | INVALID_ARGUMENT |
「\path」參數包含無效的值:☃" | 你的要求含有無效的引數。發生這項錯誤的可能原因如下:
如果傳遞 |
403 | PERMISSION_DENIED |
已封鎖未註冊的要求。請透過 Google Developers Console 註冊。 | 基於下列一或多項原因,要求遭拒:
如要使用 Google 地圖平台產品,請務必為您的帳戶啟用計費功能,且所有要求都必須包含有效的 API 金鑰。如要解決這個問題,請按照下列步驟操作: |
404 | NOT_FOUND |
這項服務必須使用 HTTPS。 | 請確認您傳送要求的對像是 https://roads.googleapis.com/ ,而不是 http://roads.googleapis.com/ 。 |
429 | RESOURCE_EXHAUSTED |
已達專案要求數量上限,因此要求受到限制。 | 您超出了在 Google Cloud Platform 控制台設定的要求上限。這項限制一般設為每日要求數、每 100 秒要求數、每位使用者每 100 秒的要求數。如要避免一或多位使用者用盡每日配額,同時仍允許所有使用者以合理的方式存取資源,請務必設定這項限制。如要設定這些限制,請參閱「限制 API 用量」一節。 |
指數輪詢
當要求失敗時,您應以指數輪詢方式重試要求。例如,如果要求失敗一次,則在每秒重試,如果再次失敗,則在 2 秒後重試,然後四秒,依此類推。這樣可以確保無效要求或大規模應用失敗,不會導致 Google 伺服器造成負擔,因為許多用戶端都會嘗試快速重試要求。
疑難排解常見問題
導入問題
- 我應該多久取樣車輛位置資訊?
- 為取得高品質的貼齊道路結果,建議每 1 到 10 秒一次。
- 每筆查詢可傳送的點數是否有數量上限?
- 有,一個查詢最多可包含 100 個點。
- 儲存對齊的經緯度組合時,我應該使用哪個精確度?
- 為確保在所有縮放等級下貼齊路徑皆遵守道路,即使在最大縮放等級下,仍應將對齊的經緯度組合儲存在精確度到小數點後 7 位數。
- 我可以使用編碼折線顯示貼齊的路徑嗎?
- 編碼折線只能指定到小數點後 5 位的精確度,因此誤差約為 2 公尺。如果您想要在高縮放等級下沿道路跟隨道路時,則不適合使用編碼折線。
常見問題
- 有些資料點沒有對齊,或路徑貼齊的路徑有缺漏。該如何修正這個問題?
- 放大地圖時,為什麼貼齊路徑會鋸齒狀,或是偏離公路?
-
- 如果在顯示已接合的經緯度組合前,是否要截斷其精確度?如果在小數點小於 7 位數的精確度,儲存已對齊的經緯度組合,則當地圖顯示定位點路徑時,會導致精確度錯誤。
- 您是否使用編碼折線?編碼折線會將經緯度組合截斷成小數點後 5 位,這會引發數個公尺的錯誤,導致線條在高縮放等級時出現鋸齒狀或略微偏差。
如果以上兩者皆非,地圖圖塊可能最近才更新,導致這些圖塊與夾扣的道路索引不相符。如果只有少數查詢受到影響,很可能是問題所在。Google 地圖會定期更新,因此這種情況有時可能會發生,但如果您會定期查看地圖上的舊路徑 (例如幾週前拍過的路徑),就可能會更頻繁地發生。為獲得最佳視覺化效果,建議先重新拼湊舊路徑,再在地圖上顯示這些路徑,盡可能減少地圖圖塊與用於縫隙的道路索引之間不一致的情形。
- 為什麼 X 道路速限無法正確顯示?
- 速限來自許多資料來源,相關準確度和涵蓋範圍也會有所不同。
如果您發現有模式,例如特定道路類型的速限,或是特定區域的速限有誤,請按照下列步驟通知我們:
- 在電腦上開啟 Google 地圖,或是開啟 Android 版 Google 地圖應用程式。
- 開啟左側選單。
- 選取「提供意見」。注意:系統可能會要求您登入。
- 選取「編輯地圖」。
- 選取要編輯的路段。
- 選取「繼續」。
- 在「其他」欄位中,指出該道路的速限有誤。
- 選取 [提交]。
- 為什麼我的對齊路徑會裁切,而不是跟隨公路?
-
如要修正這個問題,請檢查下列事項:
- 確認
interpolate
參數已設為true
。 - 確認原始資料點的取樣間隔是否夠近 (每 1 至 10 秒)。
- 確認
- 在沒有速限的情況下,為什麼道路貼合路徑傳回許多路段?
- 當
interpolate
參數設為true
時,對齊道路查詢會傳回沿著四角、曲線和圓環的道路。如果是道路曲線,即使速限沒有改變,系統仍會傳回多個路段,以便建立高度符合道路幾何圖形的折線。