У меня есть расширение для панели chrome devtools. Я могу отправлять сообщения на страницу с помощью chrome.devtools.inspectedWindow.eval
... но как мне получать сообщения в панели разработчика? В частности, мне нужно, чтобы моя панель разработки подключалась к событиям, происходящим на странице. Я не могу заставить его прослушивать события в моем сценарии контента или на фоновой странице.
Я пробовал chrome.extension.sendMessage
в сценарии содержимого вместе с chrome.extension.onMessage.addListener
в сценарии панели разработки. Но sendMessage
жалуется наPort error: Could not establish connection. Receiving end does not exist.
Проблема сохраняется с долгоживущими -соединениями :
. В сценарии контента или на фоновой странице:
var port = chrome.extension.connect({name: "test"});
port.postMessage({msg: "testing"});
В панели инструментов разработчика javascript:
chrome.extension.onConnect.addListener(function(port) {
port.onMessage.addListener(function(msg) {
// never gets here
});
});
Как я могу прослушивать события, которые запускаются в моем сценарии контента --на моей панели инструментов разработчика? Подобная диаграмма из Firefox Add -On SDK была бы отличной:https://addons.mozilla.org/en-US/developers/docs/sdk/latest/static-files/media/content-scripting-overview.png