由鲍里斯·斯穆斯(Boris Smus)阅读this page并试图实施,一切都运作良好。唯一的问题是,请求在一段时间后失败了。我正在使用googleapis。一旦我安装了测试扩展并尝试发出一些googleapi请求,他们就会通过。但是,当我尝试相同的时候他们失败了。 在background.js NET选项卡中,我看到以下响应。
{ "error": { "errors": [ { "domain": "global", "reason": "authError", "message": "Invalid Credentials", "locationType": "header", "location": "Authorization" } ], "code": 401, "message": "Invalid Credentials" } }
如果我只是重新加载我的扩展,一切都恢复正常。我认为它与accessstoken有关,但我不确定如何/在哪里修复它。
我从background.js页面的控制台选项卡中观察到,当一切正常时,google.isAccessTokenExpired()会导致'false'。当一切都失败时,它返回TRUE。在哪里/如何解决这个问题。
答案 0 :(得分:0)
解决!添加了以下代码。
if(google.isAccessTokenExpired()) {
google.authorize(function() { myFunc(info); } );
}
不知道为什么它暂时不起作用。现在它的工作。
答案 1 :(得分:0)
对我来说,它适用于userinfo API。但不适用于联系人API。通过将联系人的URL从http更改为https
,解决了该问题所以我使用的网址是:https://www.googleapis.com/m8/feeds/contacts/default/full