Я пишу расширение для Google Chrome. Сценарий содержимого никогда не видит, что запрос sendNextProfile был отправлен с фоновой страницы. По крайней мере, сообщение «ПОЛУЧЕННЫЙ ЗАПРОС НА СЛЕДУЮЩИЙ ПРОФИЛЬ» никогда не появляется в журнале консоли, и новый фон не виден в фоновом режиме.
ЗДЕСЬ КОД ИЗ ПИСАНИЯ СОДЕРЖИМОГО
//send request for first profile
var currentProfile=0;
chrome.extension.sendRequest({cmd: "openProfile", url: profileLinks[currentProfile]});
//listen for request to send next profile
chrome.extension.onRequest.addListener(function(request, sender, sendResponse) {
if(request.cmd == "sendNextProfile") {
console.log("RECEIVED REQUEST FOR NEXT PROFILE");
++currentProfile;
chrome.extension.sendRequest({cmd: "openProfile", url: profileLinks[currentProfile]});
}
});
ЗДЕСЬ КОД ИЗ ФОНОВОЙ СТРАНИЦЫ
//detect when message tab is closed and request new profile
//var closedTabId=null;
chrome.tabs.onRemoved.addListener(function(tabid, removeInfo) {
console.log("TAB CLOSED "+tabid);
if (tabid==msgTabId) {
chrome.extension.sendRequest({cmd: "sendNextProfile"});
console.log("REQUESTED NEW PROFILE");
}
});
В фоновом режиме консольное сообщение выглядит так, как ожидается, поэтому кажется, что запрос отправлен. Так что с этим кодом?