проблема с chrome.runtime.sendMessage callback undefined
не могу понять в чем проблема, в background.js
chrome.runtime.onMessage.addListener(function(request, sender, callback) { if(request.action == 'request') { $.ajax({ url: request.url, type: request.type, dataType: request.dataType, data: request.data, success: function(data) { callback(data); }, error: function() { callback({success: false, error: error.statusText}); } }); } else if (request.action == 'loadfile') { $.ajax({ url: chrome.extension.getURL('/'+request.file), type: 'get', dataType: 'text', data: {}, success: function(data) { console.log(data); //====файл html загружен callback({"data":data}); }, error: function() { callback({success: false, error: error.statusText}); } }); } }); в контентной странице запрос request работает var url='http://...'; var requst = {action:'request', url:url, type:'get', dataType:'json', data:{}} chrome.runtime.sendMessage(requst, function(RET_ZAPROS) { console.log(RET_ZAPROS); }); а запрос loadfile не работает var requst={action: 'loadfile', file:'html/setups.html'} chrome.runtime.sendMessage(requst, function(RET_ANSWER) { console.log(RET_ANSWER); //====ЗДЕСЬ undefined }); причем в бэкграунде сам файл загружается но ответ приходит как undefined |
Попробуй после 29 строки воткнуть return true;
|
Цитата:
теперь оба варианта заработали после return true вот только про это return я что-то в документации не видел или хренова смотрел. вообщем еще раз спасибо! |
Цитата:
https://developer.chrome.com/apps/ru...vent-onMessage (строка болдом в описании параметра sendResponse) |
Цитата:
спасибо огромное!! а вот еще вопрос, я там тему создал по этому вопросу, но может ты вкурсе как такое реализовать https://javascript.ru/forum/misc/709...ion-event.html |
Часовой пояс GMT +3, время: 03:24. |