возможно ли отправить запрос, используя api для передачи сообщений на ту же страницу, которая будет его прослушивать? это не похоже на работу!
Одним из решений является настройка прослушивателя на другой странице, а затем перенаправить запрос обратно на родительскую страницу. Но это взлом, и я действительно не хочу этого делать: (
РЕДАКТИРОВАТЬ (обновлено)
background.html (0)
chrome.extension.sendRequest({action:'foo'}, function(response) {
//do stuff
});
index.html (1)
chrome.extension.sendRequest({action:'foo'}, function(response) {
//do stuff
});
background.html (2)
chrome.extension.onRequest.addListener(function(request,sender,sendResponse) {
if(request.action=='foo') //do stuff
});
...
...
//the code form (0)
сверху (1) работает, но (0) не работает: (
РЕДАКТИРОВАТЬ 2
из (2)
chrome.extension.onRequest.addListener(function(request,sender,sendResponse) {
switch(request.action) {
case 'foo': //do some stuff here
break;
}
});
Вышеуказанный переключатель вырос довольно долго ... я думаю, около 30 записей ... плюс нет другого способа вызвать коммутатор, кроме как нажать на список событий. (или я что-то упустил?)
Я хочу выполнить код case 'foo':
где-то под ним в том же файле, поэтому я попытался вызвать его в (0).