Chrome扩展程序权限XMLHttpRequest

时间:2013-07-28 16:56:32

标签: javascript google-chrome-extension xmlhttprequest

我是第一次为chrome扩展编码。很好地阅读他们的文档,特别是权限部分。

我想从我的localhost加载一个具有特定端口ex的JSON响应。 3000。

我更新了我的mainfest.json和persssion部分就像

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

但获得XMLHttpRequest cannot load http://localhost:3000/project/data.json Origin null is not allowed by Access-Control-Allow-Origin.

似乎我错过了什么。

我错过了什么?

2 个答案:

答案 0 :(得分:0)

您可以尝试以下任何解决方案:

  1. 将以下行添加到清单文件的末尾:

    "content_security_policy": "script-src 'self' http://localhost:3000; object-src 'self'"
    
  2. 而不是localhost,请尝试使用地址,即127.0.0.1

  3. 希望它有所帮助。

答案 1 :(得分:0)

如果您的请求被发送到与其他端口相同的主机,那么这已经是跨域请求(请参阅http://en.wikipedia.org/wiki/Same_origin_policy#Origin_determination_rules)。不允许跨域ajax请求。 有两种解决方案:

  1. 使用JSONP请求。
  2. 要在响应标头中添加一个选项: Access-Control-Allow-Origin:* 但并非所有浏览器都支持此功能。
  3. 请参阅: