10
我试图contentscript
和background script
之间发送消息像ContentScript.js双向通信在Chrome返回错误扩展
chrome.extension.sendMessage({ type : "some" }, function(response) {
anotherFunction(response.data);
return true;
});
function anotherFunction(data){
// Some code here
chrome.extension.sendMessage({ type : "someOther" }, function(response) {
console.log(response.data); // Failed to get Response
return true;
});
}
下面
Background.js
chrome.extension.onMessage.addListener(function(request, sender, sendResponse) {
switch(request.type){
case "some":
sendResponse({ data : "Some Response" });
return true;
break;
case "someOther":
// Here I am getting an error. Error is given below
sendResponse({ data : "Some Response" });
break;
}
});
错误
无法发送回应:如果你想监听器返回
后,我怎样才能解决这个问题发送响应的chrome.runtime.onMessage监听器必须返回true?
你有没有尝试在你的第二个'case'中添加'return true'就像错误信息所示? – apsillers 2013-05-07 13:00:56
@apsillers是的,它工作正常。我不得不在两个地方回归真实,但我只有一个地方。这是问题所在。感谢您指出。能否请您将它作为答案发布,以便我可以接受它。 – Exception 2013-05-07 13:01:45