从Chrome扩展程序向Chrome应用程序发送消息

时间:2016-01-11 18:38:46

标签: javascript google-chrome google-chrome-extension

我正在为chrome开发一个测试应用程序。

我也正在开发一个扩展程序,它应该获得tab url并使用标签的网址向应用程序发送消息,其中扩展程序已激活。

在扩展程序中,我有background.js

chrome.browserAction.onClicked.addListener(function(tab) {
    alert(tab.url);
});

tab.url信息是正确的,我需要发送到应用程序,(也是在javascript中)。

我在互联网上看过很多例子,但有些东西我没有得到。 我应该如何发布消息,以及如何在应用程序上收听该消息?

1 个答案:

答案 0 :(得分:0)

讯息文档have a clear example

分机代码:

chrome.browserAction.onClicked.addListener(function(tab) {
    chrome.runtime.sendMessage("appIdHere", {tabUrl: tab.url});
});

应用代码:

chrome.runtime.onMessageExternal.addListener(
    function(message, sender, sendResponse) {
        // Check the ID! Requests may be spoofed.
        if(sender.id == "extensionIdHere" && message.tabUrl) {
            doStuff(message.tabUrl);
        }
    }
}