我想从随机网页的控制台发送消息到我的 chrome 扩展程序。
chrome.extension.sendMessage 似乎不起作用。
根据官方文档你应该使用postMessage在发送者和message接收器中的事件监听器。
这是一个例子:
您网站的 page.html
var data = { type: "FROM_PAGE", text: "Hello from the webpage!" };
window.postMessage(data, "*");
内容脚本:(使用注入chrome.tabs.executeScript(tabid, {code:...
)
window.addEventListener("message", function(event) {
// We only accept messages from ourselves
if (event.source != window)
return;
if (event.data.type && (event.data.type == "FROM_PAGE")) {
console.log("Content script received message: " + event.data.text);
}
});
Here page.html
(不是扩展的一部分)向自身发布消息,这些消息由内容脚本拦截和检查。通过类似的方法也可以实现相反的效果。
要从内容脚本传递到扩展,您必须使用可用的消息传递技术之一.
它看起来很复杂,而且有些复杂,但所有这些胡言乱语都是非常安全的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)