0

イベントページにコンテンツスクリプトから変数を取得してメッセージを送信する必要があります。私が知る限り、単純なJSONメッセージを{greeting: "hello"}のようにイベントページに送ることができます。Chrome拡張機能 - コンテンツスクリプトからイベントページへの変数の送信

コンテンツスクリプトからイベントページに変数を送信するにはどうすればよいですか?

私はJSON.stringify()を見て、変数をJSONメッセージで送信しましたが、私は運がありませんでした。

+0

変数には何がありますか? – gcampbell

+0

@gcampbellは文字列です。 – dlegs

+0

JSONとしてエンコードできるはずです。 'JSON.stringify'ではうまくいかないのですか? – gcampbell

答えて

-1

コンテンツスクリプトからメッセージを送信するときにオブジェクトを文字列化して、それを受け取ったときにイベントページで解析することができます。

コンテンツスクリプト

var myObj = {}; 
chrome.runtime.sendMessage({data: myObj}, function(response) { 

}); 

イベントページ

chrome.runtime.onMessage.addListener(
    function(request, sender, sendResponse) { 
     var data = request.data; 
}); 
+0

[メッセージは自動的にJSONシリアル化されます](http://stackoverflow.com/questions/38234925/does-chrome-extension-internally-use-json-stiringify-to-postmessage-over-to-back) – wOxxOm

0

は、あなたが直接the message is automatically JSON-serializedので、何もせずにchrome.runtime.sendMessage経由で送信することができ、あなたがVARという名前の変数を持っていると言います。

chrome.runtime.sendMessage({ data: VAR }); 
関連する問題