您可以通过使用“消息传递API”将消息发送到您的background.js并将其返回到content.js,从而在您的内容脚本中访问它。
content.js:
chrome.runtime.sendMessage({type: "getAuthToken"}, function(response) {
alert(response.token);
});
在background.js中:
chrome.runtime.onMessage.addListener(function(request, sender, sendResponse) {
if (request.type === "getAuthToken") {
chrome.identity.getAuthToken({interactive: true}, function(token) {
sendResponse({token: token});
});
return true;
}
});
而你的 manifest.json 至少应该具备以下属性:
{
...
"permissions": [
...
"identity",
...
],
...
"background": {
"service_worker": "background.js"
},
...
"content_scripts": [
...
{
"matches": ["https://example.com/*"],
"js": ["content.js"],
"match_origin_as_fallback": false
},
...
]
}
现在当您访问example.com时,假设您的扩展程序已经登录了用户,一个警告框应该会出现,其中包含已登录用户的令牌。