Google chrome extension 将一次性消息从后台页面发送到devtool页面

Google chrome extension 将一次性消息从后台页面发送到devtool页面,google-chrome-extension,google-chrome-devtools,Google Chrome Extension,Google Chrome Devtools,我一直在开发chrome扩展,它有时需要消息传递来触发当前网页上的一些事件 我一直在使用chrome.runtime.sendMessage将消息从devtool页面发送到后台页面。在后台页面上,我使用chrome.runtime.onMessage.addListener获取这些消息,并且它正在工作 但我不能用这个从后台页面发送消息到devtools页面! 如何将一次性消息从后台页面发送到devtool页面 devtool.js chrome.runtime.onMessage.addList

我一直在开发chrome扩展,它有时需要消息传递来触发当前网页上的一些事件

我一直在使用chrome.runtime.sendMessage将消息从devtool页面发送到后台页面。在后台页面上,我使用chrome.runtime.onMessage.addListener获取这些消息,并且它正在工作

但我不能用这个从后台页面发送消息到devtools页面! 如何将一次性消息从后台页面发送到devtool页面

devtool.js

chrome.runtime.onMessage.addListener(function(request){
if(request.name=="xyz")
{
    alert("HI");
}
});
background.js

chrome.runtime.sendMessage({
    name : "xyz"
});

有人能帮忙吗?

基于此,您不能使用
chrome.runtime.sendMessage()
向在DevTools上下文中运行的扩展页发送消息。从后台页面到DevTools通信的最佳方式是使用
chrome.runtime.connect
从DevTools页面打开一个端口,然后在后台页面中使用
port.postMessage()

如果您感兴趣,我已经创建了一个小型库,为您完成所有工作,并允许您轻松地跨任何扩展部分发送消息(特别是在您的情况下,从后台到devtool)

您可以在这里查看:

如果您对如何使用它有任何疑问,请随时与我联系。

基于此,您不能使用
chrome.extension.sendMessage()
向在DevTools上下文中运行的扩展页发送消息。从后台页面到DevTools通信的最佳方式是使用
chrome.extension.connect
从DevTools页面打开一个端口,稍后在后台页面中使用port.postMessage()。@Abielta请将该注释作为答案(但请注意,
extension
应替换为
runtime