Google chrome Chrome.identity不可用/未定义

Google chrome Chrome.identity不可用/未定义,google-chrome,Google Chrome,我正在编写一个chrome扩展,其中我尝试使用chrome.identity API。但我的Chrome无法识别身份 在开发人员工具中的以下代码中,我收到一个错误,提示“无法读取未定义的属性getAuthToken: chrome.identity.getAuthToken({ 'interactive': false }, function(token) { 我尝试在控制台中键入。chrome.extension有效,但chrome.identity未定义 My manifest.json的

我正在编写一个chrome扩展,其中我尝试使用chrome.identity API。但我的Chrome无法识别身份

在开发人员工具中的以下代码中,我收到一个错误,提示“无法读取未定义的属性getAuthToken:

chrome.identity.getAuthToken({ 'interactive': false }, function(token) {
我尝试在控制台中键入。chrome.extension有效,但chrome.identity未定义


My manifest.json的权限中有“identity”。我使用的是最新的Chrome v38。启用identity API还需要什么吗?

我无法使用identity的原因是因为我试图从内容脚本访问它。我切换到了后台脚本,它现在可以工作了!谢谢Rob


另外,您还需要在您的
清单.json中设置“
”权限“:[“identity”]
”,这可能还需要在清单中提供一个“key”值(如果您试图让它在本地工作,但它不工作)。您可以使用与上载扩展到webstore时获得的密钥相同的密钥,也可以尝试生成新的密钥(尽管我自己无法使用第二种方法)。

此API不能用于内容脚本。标识示例()在扩展名的js文件中使用它,和我一样。我肯定我遗漏了一些东西。API可以在背景页、扩展页、选项页或弹出页中使用,但不能在内容脚本中使用。谢谢Rob,这是我正在寻找的信息。真的很有帮助!我正试图在background.js中使用它,但它不起作用。我花了几个小时It’他在同一件事上苦苦挣扎。令人惊讶的是,文档中竟然没有包含它。@TahirYasin我也有这个问题,结果我忘了在manifest.json中添加
“权限”:[“identity”]
。@adrianmc这应该包含在可接受的答案中!很可能是因为如何让content.js在background.js中调用getAuth?