我知道有可能将postMessage从网页扩展到Chrome扩展,并获得良好的回应回到网页,但它可能是另一种方式吗?从Chrome扩展到网页的通信
我的问题“我需要能够发送的请求到一个网页,等待我可以在扩展使用。也许不是使用于PostMessage的回应?”
我知道文档说“只有网页可以启动连接”。 (https://developer.chrome.com/extensions/messaging#external-webpage)
这里是我想尝试如此的票价。
background.js
chrome.extension.sendMessage("Hello from extension to webpage");
window.postMessage("Hello from extension to webpage");
chrome.tabs.sendMessage(TAB_ID, "Hello from extension to webpage");
webpage.js(而不是扩展的一部分)
window.onmessage = (event) => {
// Waiting for that message.
console.info("Event received ", event);
}
window.chrome.runtime.connect(CHROME_EXTENSION_APP_ID).onMessage.addListener(function(){
function(request, sender, sendResponse) {
console.info("Event received from the extension", event);
}
})
任何想法可以理解 :)
使用内容脚本和常规DOM消息,如CustomEvent。 – wOxxOm
尝试检查[与嵌入页面通信](https://developer.chrome.com/extensions/content_scripts#host-page-communication)和相关的SO [post](http://stackoverflow.com/a/ 19048254/5995040),如前所述,如果您正在使用内容脚本,则可能会发生这种情况。您也可以查看[论坛](https://groups.google.com/a/chromium.org/forum/#!topic/chromium-extensions/lTUDJYClBF0),其中介绍了如何将信息从扩展程序传递到网页。希望这可以帮助。 –