錯誤
如果發生錯誤,系統會傳回標準格式錯誤回應主體,並將 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\"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 用量」一節。 |
指數輪詢
如果要求失敗,請確保以指數輪詢方式重試要求。舉例來說,如果要求失敗一次,請於幾秒後重試,如果失敗,則在兩秒後重試,然後四秒,依此類推。這可以確保無效的要求或大規模的擴充問題不會讓 Google 的伺服器承受大量威脅,因為許多用戶端會盡快重試要求。
疑難排解常見問題
導入問題
- 我應該以哪個頻率取樣車輛位置資訊?
- 建議每 1 到 10 秒傳送一次,即可獲得快速的行車路線。
- 每項查詢可以傳送的點數有數量限制嗎?
- 可以,每個查詢最多只能有 100 點。
- 我應該使用哪個精確度級別來儲存已對齊的經緯度組合?
- 為確保貼齊路徑在所有縮放等級中都會遵循道路,即使在最高縮放等級下,仍請將貼齊的經緯度組合儲存在精確度為 7 位小數。
- 我可以使用編碼的折線顯示貼齊路徑嗎?
- 編碼折線的精確度只能指定至小數點後 5 位,因此會導致約 2 公尺的誤差。因此,如果您希望貼齊的折線在高縮放等級中遵循道路,則不適合使用編碼折線。
常見問題
- 有些點沒有對齊,或者我在緊湊的路徑上出現缺口。該如何修正這個問題?
- 放大地圖時,為什麼有條路上的路徑有鋸齒狀或偏離道路?
-
- 您是否在顯示之前,截斷已對齊經緯度組合的精確度?如果將貼齊的緯度/經度組合儲存在小數點後的精確度低於 7 個,當地圖顯示插入的路徑時,會導致精確度錯誤。
- 您是否使用編碼折線?編碼的折線會將緯度/經度配對截斷成小數點後 5 位,導致數個公尺的錯誤,導致在高縮放等級下,線條出現鋸齒狀或稍微偏離道路。
如果以上兩種情況皆非,表示地圖圖塊可能最近才更新,導致這些圖塊與拖曳使用的道路索引不同步。如果只有少數查詢受到影響,很可能是這種情況。由於 Google 地圖會定期更新,因此這種情況偶爾會發生,而如果您經常查看地圖上的舊路徑 (例如數週前拍攝的路徑),這種情況可能會更頻繁。為獲得最佳的視覺化效果,建議先重新消除舊路徑,然後才在地圖上顯示這些路徑,以便盡可能減少地圖圖塊與用於拖曳的道路索引之間的不一致。
- 為什麼 X 道路的速限資訊無法正確顯示?
- 速限資訊來自數個準確度和涵蓋率各異的因素。如果您發現某種模式,例如特定道路類型或特定區域的速限限制持續有誤,請按照下列步驟操作:
- 在電腦上開啟 Google 地圖,或開啟 Android 版 Google 地圖應用程式。
- 開啟左側選單。
- 選取「提供意見」。注意:系統可能會提示您登入。
- 選取「編輯地圖」。
- 選取你要編輯的路段。
- 選取「繼續」。
- 在「其他」欄位中,註明該道路的速限有誤。
- 選取 [提交]。
- 為什麼我快要走的道路,而不是跟隨道路行駛?
-
如要修正這個問題,請檢查下列事項:
- 請確認
interpolate
參數已設為true
。 - 檢查原始資料點的取樣時間間隔 (每 1 至 10 秒) 是否足夠。
- 請確認
- 為甚麼在沒有速限變更的道路拼湊路徑中,收到許多路段傳回?
- 當
interpolate
參數設為true
時,對齊到道路的查詢會傳回折線,其中包含邊角、曲線和圓環的道路。為了建立緊跟道路幾何圖形的折線,即使速限沒有改變,系統還是會傳回多個路段。