[英]Exceeding Google Maps API request limit handler
我正在為 Google 地圖可能出現的錯誤創建處理程序。
我想要處理的一種情況是,發出的請求數量達到了 Google 地圖 JavaScript API 的配額限制。
達到請求限制時,一條錯誤消息將涵蓋 map。 錯誤消息顯示:此頁面無法正確加載谷歌地圖。
控制台還有一條消息 output,您已超出此 API 的請求配額。 請參閱https://developers.google.com/maps/documentation/javascript/error-messages?utm_source=maps_js&utm_medium=degraded&utm_campaign=billing#api-key-and-billing-errors
這一切都按預期工作。 理想情況下,當達到請求限制時,我想將用戶重定向到另一個頁面; 但是,我完全不知道在哪里處理這個問題。 下面是我用來加載 Google 地圖 JavaScript API 的代碼示例。
import { useState, useEffect } from 'react'
import { Loader } from "@googlemaps/js-api-loader"
function useGoogleMapsApi() {
const [api, setApi] = useState()
useEffect(() => {
if ((window as any).google) {
setApi((window as any).google)
return
}
const loader = new Loader({
apiKey: 'MY_GOOGLE_MAPS_API_KEY',
version: 'beta',
libraries: ['places', 'geometry'],
})
loader
.load()
.then(() => {
setApi((window as any).google)
})
}, [])
return api
}
export default useGoogleMapsApi
速率限制是在一定時間間隔內可以執行的 API 請求的數量。 根據Google 的 API Usage and Billing page ,每秒有 50 個請求的限制。 如果超過此數量,對 API 的后續請求將失敗並顯示OVER_DAILY_LIMIT
或OVER_QUERY_LIMIT
狀態代碼,並且不會返回地理編碼數據。
如果您反復 go 超出限制,Google 也可能會阻止您訪問API。
這就是為什么我會建議您避免嘗試超過此請求限制,因為它可能會造成相當大的麻煩。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.