如何解决Access-Control-Allow-Origin错误?

时间:2015-04-09 09:20:35

标签: javascript php ajax

我知道已经发布了很多与此问题相关的查询。但我仍然无法解决错误。

我到了,

  

XMLHttpRequest无法加载http://localhost:100/test/test1.php。请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,不允许原点“http://localhost:8080”访问。

解决这个问题 -

  1. 我在启动chrome.exe时使用了--allow-file-access-from-files --disable-web-security。 (不工作)
  2. 之后我将header('Access-Control-Allow-Origin:*');放入php中
  3. 在ajax中,$.ajax({crossDomain:true})我已经包含了。 (不工作)。

3 个答案:

答案 0 :(得分:2)

添加以下三行:

header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: GET, POST');
header("Access-Control-Allow-Headers: X-Requested-With");

答案 1 :(得分:1)

有一本手册:

http://enable-cors.org/

根据您的服务器设置提供了各种选项(以及相当好地解释主题)。

请注意,以前的答案对于PHP ... header('Access-Control-Allow-Origin:*');完全正确如果您遇到问题,请记住您需要在发送任何正文输出之前发送标题缓冲区。

答案 2 :(得分:0)

  

完成此操作的简单解决方案是您需要将标头添加到服务器端

header('Access-Control-Allow-Origin:*')

在我的一个golang API服务器中,我添加了以下标题代码以允许CORS

Response.Header().Set("Access-Control-Allow-Origin", "*")