jQuery - 没有访问控制允许来源

Posted

技术标签:

【中文标题】jQuery - 没有访问控制允许来源【英文标题】:jQuery - No Access Control Allow Origin 【发布时间】:2016-03-24 16:33:08 【问题描述】:

我想从不同的域加载网站。我已经在 header.php 文件中通过 php 设置了标题:

header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Methods: PUT, GET, POST, DELETE, OPTIONS");
header("Access-Control-Allow-Headers: *");

我搜索了启用跨域的 ajax 请求的正确方法,结果如下:

$.ajax(

    type: 'GET',
    url: target,
    processData: true,
    data: ,
    dataType: "json",
    success: function (data)
    
        $("#toolsarea").attr('src', target);
    
);

但我仍然收到错误“No 'Access-Control-Allow-Origin”。我还缺少什么吗?

【问题讨论】:

Access-Control-Allow-Origin error sending a jQuery Post to Google API's的可能重复 【参考方案1】:

您的问题与同源政策有关,该政策出于安全原因阻止 javascript 发出 AJAX 请求。

您需要确保在您的 PHP 服务器上启用了 CORS。

你可以这样做:

<?php
 header("Access-Control-Allow-Origin: *")

有关如何在您的服务器上启用 CORS 的更多信息,请参见此处:

http://enable-cors.org/server_php.html

您可以在此处阅读有关客户端同源策略的更多信息:

https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy

【讨论】:

以上是关于jQuery - 没有访问控制允许来源的主要内容,如果未能解决你的问题,请参考以下文章

有没有办法绕过访问控制允许来源?

jQuery XML REST 访问控制允许来源

为啥我得到“没有访问控制允许来源”

访问控制允许来源错误

访问控制允许来源错误

访问被 CORS 策略阻止:没有“访问控制允许来源”