我正在使用Python / Twisted对Google+ API进行异步HTTP调用。我们的客户端应用程序通过用户的access_token,我们对...进行API调用。
https://www.googleapis.com/plus/v1/people/me/?%s&key=%s&
...%s和%s分别用有效的access_token和(假设)有效的简单API密钥填充。
昨天一切都很美好。今天,当API突然开始返回时,我继续为此进行单元测试:
{
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "keyInvalid",
"message": "Bad Request"
}
],
"code": 400,
"message": "Bad Request"
}
}
usageLimits,keyInvalid ...好的,我明白了。我似乎达到了使用限制,并且他们已经使来自此帐户的API密钥无效。除了,我没有...
“礼貌限制”应该是“每天10,000次请求”,但我只打了几百个电话(根据谷歌自己的使用图表),我仍然看到“0%使用”配额标签。
我本可以直接将此邮件发送给Google,但他们似乎已经放弃了开发人员谷歌集团,转而支持不会收到任何回复的Google+讨论。
非常感谢任何帮助或指导。谢谢!
答案 0 :(得分:8)
我们很清楚,您使用的是Google API Console页面中的密钥?在那里,您应该会在页面左上角附近看到“API Access”选项卡。确保您使用的API密钥是Key for browser apps (with referers)
密钥,否则无效。
无论如何,我的API调用如下所示:
https://www.googleapis.com/plus/v1/people/114789529333378876576?key=ENTER_YOUR_KEY_HERE
您应该能够在没有有效密钥的情况下每天至少进行一次API调用。
答案 1 :(得分:6)
答案很简单!您不能在同一API调用中同时发送access_token和密钥。如果您使用access_token,那么您将以用户身份验证API调用,如果您使用项目Simple API Key,则您将自己进行身份验证。如果同时使用两者,则呼叫失败。
答案 2 :(得分:3)
我花了很长时间才弄明白,所以希望能节省一些时间给别人:)
通过谷歌工作人员(2012年......)看看这个帖子https://groups.google.com/forum/#!topic/google-ajax-search-api/HuKhXfsoMQc
如果谷歌团队解决了这个问题,那也会很棒! :)抱歉延迟回复。当你有一个错误时,这个错误(我们正致力于提高描述性)也会发生 对密钥的限制(例如锁定到特定的引用者或IP) 地址)。如果你在中设置了这样的限制,请确认 API控制台,您正在制作的引用或IP地址 要求来自。特别注意使用的任何通配符 引用 - 例如,如果您使用* .abc.com,如果您使用* .abc.com则无法使用 请求来自“yoururl”。
答案 3 :(得分:0)
在我的情况下,我有一个名为Key的参数,所以它认为这是一个实际的键,只是重命名了参数。
答案 4 :(得分:0)
在我的情况下 - 我只需要等几分钟,因为在更新我的API KEY后很短的时间。每当您在YT开发人员控制台上创建新密钥或更新密钥时。 YT最多可以在15分钟内完成所有更改