2013-10-05 3 views
0

Я создаю расширение chrome, и я сталкиваюсь с этой действительно раздражающей проблемой. Я хотел бы отправить сообщение из моего сценария контента на задний план и отправить ответ.chrome.runtime.sendMessage не работает

Я получаю эту ошибку:

Port: Could not establish connection. Receiving end does not exist

В настоящее время я использую этот код.

фон:

chrome.runtime.onMessage.addListener(function(message, sender, sendResponse){ 
    sendResponse("got it!"); 
}); 

содержание сценария:

chrome.runtime.sendMessage(<extension id>, "test message", function(response){ 
    console.log(response); 
}); 

Я использую хром версии 30.0.1599.69 м.

ответ

0

в контентной сценарии, здесь у меня нет «внутренний идентификатор», просто сообщение и функцию обратного вызова, так что по умолчанию посылая сообщение к этому расширению, а что-либо другое расширение в Google Chrome:

chrome.runtime.sendMessage({greeting: "removeCookie"}, function(response) { 
     console.log(response.farewell); 
    }); 

в фоновом режиме:

chrome.runtime.onMessage.addListener(function(message,sender,sendResponse){ 

     if (message.greeting == "removeCookie"){ 
        //remove cookie 
        //... 

       sendResponse({farewell:"cookie clean"}); 

     } 

}); 
Смежные вопросы