提出要求後,您可能會收到包含錯誤詳細資料的回應。
2D 圖塊和街景服務圖像
以下詳細說明使用 2D 圖塊和街景服務圖像時可能發生的錯誤。
列出錯誤
以下清單詳細說明使用 Map Tiles API 時可能會遇到的錯誤。
required
- 您的要求缺少網址參數。請注意,錯誤訊息會指出缺少哪個參數。
notFound
、invalid
您的
x
、y
或z
值超出範圍。如果是一般地圖圖塊,最高縮放等級則取決於特定地圖圖塊,以及您要求的地圖選項。
如果是一般地圖圖塊,x 座標必須位於 [0, (2^zoom)-1] 的範圍。
如果是一般地圖圖塊,y 座標必須位於 [0, (2^(zoom-1))-1] 的範圍。
街景服務圖塊的縮放值必須介於 0 到 5 (含) 之間。
街景服務圖塊的 x 和 y 座標範圍與一般地圖圖塊相同,直到第五級縮放為止。屆時,最大值是
imageHeight
或imagewidth
,除以tileHeight
或tileWidth
。
forbidden
:要求缺少有效的 API 金鑰。
expired
- 你的
session
權杖已過期。工作階段符記在建立後的兩週內有效。請注意,這項變更可能在未通知的情況下隨時變更。如果收到這個錯誤,就必須取得新的工作階段符記,如「使用工作階段符記」一文所述。 badRequest
您的要求格式錯誤。常見原因包括:
您指定了
terrain
地圖類型,不含roadmap
圖層。您針對非道路地圖地圖類型加入了
styles
陣列。您傳送了 lat/lng 值以及街景服務中繼資料要求中的全景 ID。
quotaExceeded
、rateLimitExceeded
應用程式超過允許的配額,或是超過每秒查詢次數限制。
錯誤示例
{
"error": {
"code": 403,
"message": "The request is missing a valid API key.",
"errors": [
{
"message": "The request is missing a valid API key.",
"domain": "global",
"reason": "forbidden"
}
],
"status": "PERMISSION_DENIED"
}
}
重試要求
當要求因 quotaExceeded
和 rateLimitExceeded
而失敗時,建議您重試要求,例如,無效要求或大規模失敗不會發生 Goodle 伺服器,因為許多用戶端會嘗試快速重試要求。這表示在重試要求時,請使用指數輪詢。指數輪詢會強制您及時分散要求,讓伺服器有時間復原。
舉例來說,如果要求失敗,請在一秒後再試一次。不過,如果此嘗試也失敗,請在兩秒後重試要求。如果該要求也失敗,請在四秒後再試一次。因此,只要將每項連續要求的時間長度加倍,就能有效分散要求。
3D 圖塊
您可以透過轉譯器 (負責處理伺服器錯誤) 存取擬真圖塊,因此看不見 Google 伺服器發生的錯誤。
圖塊轉譯器錯誤
舉例來說,在伺服器錯誤發生時,CesiumJS 轉譯器通常會自動失敗,這可能會導致當機、空白畫面,甚至是未載入特定圖塊等任何原因。
用來偵錯伺服器錯誤的技術,會因您使用的特定轉譯器而異。針對 CesiumJS 等瀏覽器式轉譯器,您可以使用大多數瀏覽器內建的工具檢查網路流量。舉例來說,您可以使用 Chrome 開發人員工具。
常見錯誤
以下清單詳細說明您可能遇到的常見錯誤。
- 400:引數無效
- API 金鑰、查詢參數、資訊方塊/圖塊 ID 或已過期的工作階段符記。
- 403:權限遭拒
- 缺少 API 金鑰、缺少 SSL 連線,或是您的 API 金鑰尚未加入 3D 資訊方塊的許可清單。請聯絡 Google 支援團隊並提供專案 ID,以加入 Map Tiles API 3D 圖塊功能的許可清單。
- 429:要求過多
- 您的配額已用盡。如要提高配額,請與 Google 支援團隊聯絡。