最佳答案
我试图在内容脚本和扩展之间传递消息
以下是我在内容-脚本
chrome.runtime.sendMessage({type: "getUrls"}, function(response) {
console.log(response)
});
在背景剧本里
chrome.runtime.onMessage.addListener(
function(request, sender, sendResponse) {
if (request.type == "getUrls"){
getUrls(request, sender, sendResponse)
}
});
function getUrls(request, sender, sendResponse){
var resp = sendResponse;
$.ajax({
url: "http://localhost:3000/urls",
method: 'GET',
success: function(d){
resp({urls: d})
}
});
}
现在,如果我在 getUrls
函数的 ajax 调用之前发送响应,响应就会成功发送,但是在 ajax 调用的成功方法中,当我发送响应时,它并没有发送响应,当我进入调试时,我可以看到 sendResponse
函数的代码中的端口为空。