[英]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.