以下提供一些常見問題的疑難排解提示。
為什麼準確度半徑非常大?
如果您的地理位置回應在精確度欄位中顯示極高的值,系統可能會根據要求 IP 進行地理位置配置,而不是依據 Wi-Fi 點或行動通信基地台。如果服務無法辨識任何行動通信基地台或存取點,就可能會發生這類回應。
如要確認服務無法定位您的存取點,請在要求中將 considerIp
設為 false。如果回應是 404,您已確認 wifiAccessPoints 和 CellTowers 物件無法地理定位。
如何排解回應錯誤?
如果您的要求產生錯誤,系統會傳回標準格式錯誤回應主體,並將 HTTP 狀態碼設為錯誤狀態。
錯誤回應包含單一物件,且該物件含有下列索引鍵:
code
:這與回應的 HTTP 狀態相同。message
:錯誤的簡短說明。errors
:發生的錯誤清單。每個錯誤都包含錯誤類型 (原因) 和簡短說明 (訊息) 的 ID。
舉例來說,傳送無效的 JSON 會傳回下列錯誤:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "parseError",
"message": "Parse Error",
}
],
"code": 400,
"message": "Parse Error"
}
}
從裝置收集測試資訊
如要進行額外測試,您可以使用下列 SDK 和 API 從裝置收集資訊:
Android 裝置:前往 Places SDK for Android 和 Android Location API。
iOS 裝置:前往 Places SDK for iOS。
錯誤說明
以下是您可能會在使用說明時可能遇到的錯誤。
原因 | 網域 | HTTP 狀態碼 | 說明 |
---|---|---|---|
dailyLimitExceeded |
usageLimits |
403 | 你已超出每日上限。 |
keyInvalid |
usageLimits |
400 | 您的 API 金鑰不適用於 Geolocation API。請確認您已提供完整的金鑰,並已購買 API,或啟用計費功能並啟用 API,才能免費取得配額。 |
userRateLimitExceeded |
usageLimits |
403 | 您超過了在 Google Cloud 控制台設定的要求上限,這項限制一般設為每日要求數、每 100 秒要求數,以及每位使用者每 100 秒的要求數。建議您設定限制,避免一或一群使用者用盡每日配額,同時仍允許所有使用者以合理的方式存取資源。 如要設定這些限制,請參閱「限制 API 用量」一節。 |
notFound |
geolocation |
404 | 要求有效,但未傳回任何結果。 |
parseError |
global |
400 | 要求主體不是有效的 JSON。如要進一步瞭解每個欄位,請參閱要求主體一節。 |