錯誤
如果發生錯誤,系統會傳回標準格式的錯誤回應主體,並將 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 秒後重試,然後 4 秒後重試,依此類推。這可以確保 Google 伺服器不會因發生故障的要求或大規模失敗,而發生洪水,因為許多用戶端都會嘗試快速重試要求。
疑難排解常見問題
導入問題
- 我應多久取樣車輛位置?
- 建議每 1 到 10 秒提供一次高品質貼齊車輛搜尋結果。
- 每次查詢可傳送的點數數量有上限嗎?
- 是的,查詢最多只能有 100 點。
- 我應該使用哪種精確度來儲存貼齊的經緯度組合?
- 為了確保貼齊路徑在所有縮放等級下 (即使是在最高縮放等級的情況下),則貼齊的經緯度組合應將貼齊的經緯度組合儲存在小數點後 7 位。
- 我可以使用編碼折線來顯示貼齊路徑嗎?
- 編碼折線只能指定至小數點後 5 位,因此錯誤約為 2 公尺。因此,如果您想讓貼齊的路徑在高縮放等級中遵循道路,編碼的折線就不適合。
常見問題
- 某些點無法貼齊,或我貼齊的路徑之間有間隙。該如何修正這個問題?
-
- 如果您要按固定間隔對資料點進行取樣,請確保以較短的間隔 (每 1 到 10 秒) 取樣資料點。如果使用較長的間隔 (例如 60 秒),則「前往道路」的演算法可能無法判斷行經的道路精確度是否足夠。
- 如要手動點選地圖來建立路徑點,建立路徑時,只要只有幾個點或稀疏點,貼齊演算法會無法處理。貼齊演算法最適合用於相近的點。請嘗試使用 Snap to Roads 示範或使用道路檢查器來測試路徑。
- 為什麼在放大時,我的貼齊路徑會傾斜或稍微偏離道路?
-
- 顯示對齊的經緯度組合之前,是否會截斷其精確度?以小於 7 位小數點的精確度儲存貼齊的經緯度組合,會導致地圖上顯示的路徑出現精確度錯誤。
- 您是否使用編碼折線?編碼折線會將緯度/經度組合截斷成小數點後 5 位,這會造成數個公尺錯誤,導致線條在高縮放等級下傾斜或稍微偏離道路。
如果以上兩種情況皆非,地圖圖塊最近可能更新過,導致圖塊與貼齊的道路索引未同步。如果只有少數查詢受到影響,可能就是問題原因。Google 地圖會定期更新,因此偶爾會出現這種情況,如果您定期查看地圖上的舊路徑 (例如幾週前拍攝的路徑),可能較常發生這個問題。為獲得最佳視覺化效果,建議您在顯示地圖上的舊路徑之前,先重新模擬舊路徑,以便盡量減少地圖圖塊與用於命名道路索引之間的不一致。
- 道路 X 速限顯示錯誤的可能原因為何?
- 速限來自數種不同的來源,精確度和涵蓋範圍各有不同。
如果您發現特定模式 (例如特定道路類型或特定區域的速限都有誤),請採取下列步驟通知我們:
- 在電腦上開啟 Google 地圖,或開啟 Android 版 Google 地圖應用程式。
- 開啟左側選單。
- 選取「提供意見」。注意:系統可能會要求您登入。
- 選取「編輯地圖」。
- 選取你要編輯的路段。
- 選取「繼續」。
- 在「其他」欄位中,指出該道路的速限有誤。
- 選取 [提交]。
- 為什麼我的貼齊路徑已切齊,而不是沿路?
-
如要修正這個問題,請檢查下列事項:
- 請確認
interpolate
參數已設為true
。 - 檢查原始資料點的取樣時間間隔是否足夠 (每 1 到 10 秒)。
- 請確認
- 為什麼我的道路對齊路徑中傳回了很多路段,但速限沒有改變?
- 當
interpolate
參數設為true
時,「對齊道路」查詢會傳回沿著邊角、曲線和圓環繞行道路的折線。如果公路曲線,即使速限不變,系統還是會傳回多個路段,以便建立完全符合道路幾何圖形的折線。