Пишу расширение для хрома, хочу отправить сообщение из content script в background.js. Вот код:
content script:function sendMsg(){
var port = chrome.runtime.connect({name: "main_port"});
port.postMessage({request: "status"});
port.onMessage.addListener(function(r) {
if (r.status == "on"){
port.postMessage({request2: "token"});
console.log(r.token);
}else if (r.status == "off"){
console.log("off");
}
});
}
background.js:window.onload = listenPort();
function listenPort(){
chrome.runtime.onConnect.addListener(function(port) {
console.assert(port.name == "main_port");
port.onMessage.addListener(function(msg) {
if (msg.request == "status"){
chrome.storage.local.get("status", function(r){
port.postMessage({status: r.status});
});
}
if (msg.request2 == "token"){
chrome.storage.local.get("token", function(r){
port.postMessage({status: r.token});
});
}
});
});
}
Проблема в том, что когда происходит инъекция content script, сайт становиться пустым, просто белый фон: