我尝试将来自 web_accessible_resource 的消息发布到我的 chrome 扩展的内容脚本。
我的设置:
我的 manifest.json 的一部分:
"content_scripts": [{
"matches": ["http://*/*"],
"js": ["content.js"]
}],
"web_accessible_resources": ["run.js"]
内容.js
// this listener is never triggered ;-(
chrome.extension.onMessage.addListener(function(request, sender, sendResponse) {
if (request.type === 'foo') {
// do whatever i want if request.type is foo
}
});
运行.js
window.postMessage({type: 'foo'}, '*');
我也尝试过的东西:
直接在run.js中添加监听器:
window.addEventListener("message", function(msg) {
if (msg.data.type === 'foo') {
// that one works
}
});
从后台脚本发布消息:
chrome.tabs.getCurrent(function (tab) {
chrome.tabs.sendMessage(tab.id, {type: "foo"});
});
问题:
我需要做什么?我是否需要为我的内容脚本设置一些授权或其他东西,或者为什么这不起作用???