谷歌 API 密钥限制在 20% 的时间内不起作用



我创建了一个API密钥,并将API密钥仅限于设置为特定网站的HTTP引用者。当使用带有此API键的Python请求进行测试时,看起来大约20%的请求返回200。我希望任何请求都不会返回200。有什么想法吗?

这是我的测试脚本调用静态映射api:

import os
import requests
import dotenv
# Load environment variable from .env
dotenv.load_dotenv()
# Static map api url
static_map='https://maps.googleapis.com/maps/api/staticmap?'
# api key query
api_key='key={}'.format(os.environ.get('google_api_key'))
query='center=37.2358131,-118.879106&zoom=12&size=500x500' 
+'&maptype=terrain'
# full url
full_url=static_map+'&'.join([api_key,query])
# List to store status code
sl=[] # status_code list
# Run 100 times
for i in range(100):
r=requests.get(full_url)
sl.append(r.status_code)
print('200:',sl.count(200))
print('403:',sl.count(403))

结果:

200: 18
403: 82

在重新创建了您的环境后,我可以说代码没有问题,我得到了403个响应中的100%多次运行脚本。我的建议是向谷歌云支持部门提出一个案例,因为进一步的故障排除需要查看您的项目日志。在这里,您可以找到关于如何在Google Cloud中打开和管理案例的文档[1]。

[1]https://cloud.google.com/support/docs/manage-cases

最新更新