Unchecked runtime.lastError: The message port closed before a response was received.
微wx笑 2022-10-04【网页网站】 3 0关键字: Chrome 扩展程序 extensions
Chrome扩展程序使用时控制台输出:Unchecked runtime.lastError: The message port closed before a response was received.
自己开发的一个Chrome扩展程序使用时控制台输出:Unchecked runtime.lastError: The message port closed before a response was received.
这个错误通常的原因是 "background.js" 中的 chrome.runtime.onMessage.addListener 代码出现了问题
参考下面的代码
chrome.runtime.onMessage.addListener(function (message, sender, sendResponse) { if (message.url) { //console.log(message.url); chrome.downloads.download({ url: message.url.replace("/mw690/", "/large/"), //"http://d2u2.com/get.php?url=" + encodeURIComponent(message.url) conflictAction: 'uniquify', saveAs: false, headers:[ //{ name:"referer", value: "https://photo.weibo.com/"} //{ name:"Authorization", value: "Basic dGZzYnV6eGI6ZW2344234342BVQ=="} ] }); sendResponse({url:url}); return true; } if (message.event == "copy") { //alert("copy detected"); } sendResponse({}); return true; });
1、需要添加影响语句: sendResponse({});
2、后台代码中不能使用 alert
3、console.log 控制台也是看不到的
2023-04-13 更新
找到一个查看控制台,以及调试后台脚本的方法
就是在扩展图标上右键,选择审查弹出内容
本文由 微wx笑 创作,采用 署名-非商业性使用-相同方式共享 4.0 许可协议,转载请附上原文出处链接及本声明。
原文链接:https://www.ivu4e.cn/blog/web/2022-10-04/1414.html