我正在尝试测试内容脚本和后台脚本之间的简单消息传递。但我无法弄清楚为什么我的听众回复没有返回任何东西。我的后台脚本通过onClicked事件侦听器
激活消息我的清单:
{
"background": {
"scripts": ["content.js"]
},
"browser_action": {
"default_icon": "19.png"
},
"manifest_version" : 2,
"name": "test",
"version": "0.1",
"permissions": ["tabs"],
"content_scripts": [ {
"matches": [ "*://twitter.com/*"],
"js": ["scrape.js"]
} ]}
后台脚本(content.js)
chrome.browserAction.onClicked.addListener(function(tabs) {
chrome.tabs.sendMessage(tabs.id, {text: "hey"}, function(response) {
console.log("Response: ", response);
});
});
内容脚本(scrape.js):
chrome.runtime.onMessage.addListener(function(msg, sender, sendResponse) {
console.log("Received %o from %o, frame", msg, sender.tab, sender.frameId);
sendResponse({farewell:"bye"});
});
我正在将tabID传递给sendmessage函数,但我不确定为什么我的内容脚本无法返回有效的响应。我已经浏览了几个不同的堆栈帖子,到目前为止没有运气