1

バックグラウンド ページからコンテンツ スクリプトにメッセージを渡そうとしていますが、(コンソールから) 次のエラーが表示されます。

ポート エラー: 接続を確立できませんでした。受信側が存在しません。

これが私のコードです: //コンテンツスクリプト:

var port = chrome.extension.connect({name:"connection"});
chrome.extension.onConnect.addListener(function(port) {
port.onMessage.addListener(function(msg) {
alert('I never get to see this message...');
 });
});

そして background.js で、最初にコンテンツスクリプトを持つタブを作成し、タブが作成されたら、そのコンテンツスクリプトに接続しようとします

//background.js

chrome.tabs.create({url:"http://myextension.uphero.com/"},function(tab){
var port = chrome.tabs.connect(tab.id,{name:"connection"});
console.log('port is :' +port.name);
console.log(port.onMessage);
port.postMessage({msg:"whatever"});
  });   

これで、問題は manifest.json などにはないことがわかりました (コンテンツ スクリプトは ok で定義されています。ポートと接続に問題があるだけです)。本当に助けていただければ幸いです...

4

0 に答える 0