繁体   English   中英

没有“访问控制允许来源”-CORS

[英]No 'Access-Control-Allow-Origin' - CORS

我尝试通过XMLHttpRequest获取内容:

var url = 'http://mapy.geoportal.gov.pl/wss/service/SLN/guest/sln/woj.json'

    if (XMLHttpRequest) {
    var request = new XMLHttpRequest();
    if ('withCredentials' in request) {
        request.open('GET', url, true);
        request.withCredentials = 'true';
        request.withCredentials = 'true';
        request.setRequestHeader('Access-Control-Allow-Origin', '*');
        request.send();
    }
}

我收到下一条消息:

XMLHttpRequest无法加载http://mapy.geoportal.gov.pl/wss/service/SLN/guest/sln/woj.json 对预检请求的响应未通过访问控制检查:在所请求的资源上不存在“ Access-Control-Allow-Origin”标头。 因此,不允许访问原始“空”。

如何解决这个问题? 我将Access-Control-Allow-Origin标头设置为*

继续我的网址问题: jsonp继续

您在前端附加了Access-Control-Allow-Origin ,但在服务器端处理请求时应添加该标头。 服务器应附加Access-Control-Allow-OriginAccess-Control-Request-Method标头以响应允许对前端执行请求的响应。

我的猜测是,您无法修改服务器处理请求的方式,并且服务器不支持JSON Padding(JSONP)因此您必须使用JSON代理来获取该JSON数据...

请参阅“ 如何为服务器添加CORS支持”一文,以及Access-Control-Allow-Origin标头如何工作? 所以问题以获得有关CORS的更多信息。

CORS是浏览器唯一的东西。

当您尝试从当前来源(当前域)访问某个资源到另一个域时,浏览器将阻止此请求。

现在,服务器或您想要获取资源的任何东西都希望将您的域列入白名单,可以通过添加一些标头将其列入白名单。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM