Chrome扩展程序中的Ajax调用无效

时间:2016-05-05 21:58:53

标签: ajax asynchronous google-chrome-extension

尝试在Chrome扩展程序中发送ajax请求。我已经确认请求返回200响应,它应该只是console.log来测试'。我不确定这里是否存在异常问题?我已经阅读了Chrome扩展程序' addListener'文档。

content.js

chrome.runtime.sendMessage({greeting: "hello"}, function(response) {
  console.log(response.farewell); //this is not working
  return true;
});

background.js

require('./modules/communicate.js');

var communicate = new Communicate();

chrome.runtime.onMessage.addListener(
    function(request, sender, sendResponse) {
        if (request.greeting === "hello") {

            response = communicate.talk('http://127.0.0.1:5000/test', 'GET');

            sendResponse({
                farewell: response
            });
            return true; //doing this correctly?
        }
});

communicate.js

Communicate = function() {

    this.talk = function(url, method) {
        $.ajax({
            url: url,
            method: method,
            success: function(result) {
                return result;
            }
        });
    };

};

的manifest.json

{
  "manifest_version": 2,
  "icons": { "128": "images/icon.png" },
  "browser_action": {
    "default_icon": "images/icon.png",
    "default_popup": "html/popup.html"
  },
  "background": { "scripts": ["js/background.js"] },
  "content_scripts": [{
    "matches": [ "http://*/*", "https://*/*" ],
    "js": [ "js/content.js" ]
  }],
  "permissions": [ "<all_urls>" ],
  "web_accessible_resources": [ "js/*", "html/*", "css/*", "images/*" ],
  "content_security_policy": "script-src 'self'; object-src 'self'"
}

0 个答案:

没有答案