网络商店中的Chrome应用程序适用于我,但没有其他人。可能的关键错误?

时间:2015-03-02 20:55:13

标签: google-chrome-extension google-chrome-app

我创建了一个使用身份API的Chrome应用程序,它部署在chrome web商店中。我从我的计算机中清除了dev版本并自行下载它,它运行得非常好。

所有它真正做的就是获取你的身份,使用它来获取可用于访问google doc的json表示的令牌。

我的队友从商店下载了应用程序并且它根本不起作用。该应用似乎无法获取令牌,因此无法从受限制的Google文档中获取json。我尝试在zip文件的根目录中使用key.pem重新上传应用程序,但没有运气。

可能的原因是什么?我唯一能想到的是我的电脑上有一个特定的钥匙。任何想法。

非常感谢。

1 个答案:

答案 0 :(得分:1)

这里的问题是我之前在本地开发时已经缓存了我的身份验证令牌。

由于Chrome应用程序的离线开发版本必须与您上传的版本具有相同的64个字符的ID(如果您希望api凭据为您工作),您必须注意缓存的Oauth令牌。您可以在chrome://identity-internals轻松找到它们,在那里您可以撤消令牌以模拟第一次打开应用的用户。

在我的情况下,我最初有

chrome.identity.getAuthToken({
        "interactive": true
    }, function(token) {

window.onload内。后来我将其改为false,这并不重要,因为我已经有一个缓存,因为谁知道多久。因此,该应用程序无法为其他任何人进行身份验证。 Google建议使用按钮或任何其他UI元素来启动chrome.getAuthToken方法,因为带宽问题通常会导致混乱。我重构了这段代码,只有当auth令牌不存在时才使用interactive: true