Chrome扩展程序 - 无法向其他域上的服务器发出AJAX请求

时间:2013-01-18 12:27:25

标签: ajax google-chrome-extension xmlhttprequest

我有一个Chrome内容脚本,我想使用AJAX将数据发布到远程服务器

    $.ajax({
          url: "http://remote_server/endpoint.php",  
          type: "POST",  
          dataType: "json",  
          contentType: "json",  
          data: {"foo": "bar"},
    });

如果我在manifest.json中设置以下内容,我可以将其发布到我的本地托管服务器 -

  "permissions": [
    "http://*/"
  ],

  "permissions": [
    "http://localhost/"
  ],

但是,如果尝试将数据发布到远程服务器,我会收到错误,即使我在manifest.json中有以下任一设置 -

  "permissions": [
    "http://*/"
  ],

  "permissions": [
    "http://remote_server/"
  ],

我想如果你设置权限you are allowed to make cross-site requests?那为什么这不起作用?

  

XMLHttpRequest无法加载   http://remote_server/endpoint.php。   Origin chrome-extension:// koogajpmmcapakdeahannaecjbcfgicl不是   允许使用Access-Control-Allow-Origin。

1 个答案:

答案 0 :(得分:1)

它应该工作。确保在进行更改后,您正在重新加载扩展程序:设置 - >工具 - >扩展程序,然后点击您的扩展程序的“重新加载”链接。