Chrome 扩展上的访问控制允许来源

新手上路,请多包涵

我正在制作一个 Chrome 扩展,它从我自己的服务器中提取数据。它一次使用大约 4 个 httpRequests,但有时我会收到如下控制台错误:

XMLHttpRequest cannot load http://apps.radionsm.lv/apps/system/index.php?request=now. Origin chrome-extension://egkddfmbidfobhchndockbhjancbpfkd is not allowed by Access-Control-Allow-Origin. 对每个人来说有时没有。

如果我发送 header('Access-Control-Allow-Origin: *'); 这会修复它吗?

原文由 Raimonds 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 452
1 个回答

您正在尝试进行跨源资源共享 (CORS)。坏消息是,如果没有服务器作为中间人,就无法在普通网页上执行此操作。好消息是,在 chrome 扩展程序中,您可以请求访问任何您想要的 url 的权限。只需将类似的内容放入您的 manifest.json 文件中。

允许连接到您的站点:

  "permissions": [
    "http://*.radionsm.lv/"
  ],

允许连接到任何站点:

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

当用户安装您的扩展程序时,Chrome 会在安装完成之前在对话框中通知他们所需的权限。

原文由 Eamonn 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏