为什么带有www和没有www的URL对JSON请求的行为有所不同

Bip*_*thi 3 url jquery json access-control getjson

我使用getJSON从我的服务器上的文本文件中获取数据我在getJSON请求中提供绝对URL

var server="http://abc.com/text.json"
$.getJSON(server,function(data){
    console.log(data);
})
Run Code Online (Sandbox Code Playgroud)

因此,当我使用URL http://abc.com/访问该站点时,我获得了正确的JSON值,但是当我使用URL http://www.abc.com/访问同一站点时,它显示错误

Origin http://www.abc.com is not allowed by Access-Control-Allow-Origin.
Run Code Online (Sandbox Code Playgroud)

这两个URL指向同一页面,然后getJSON的行为方式不同

Sir*_*rko 6

基本上http://abc.com/text.json并且http://www.abc.com/text.json被浏览器识别为不同的域,即使它们指向后端中的相同资源.

因此,当您尝试从另一个域访问资源时,您会遇到相同原始策略的问题.

如果您希望两个URL都有效,则可以切换到使用JSONP方法.这与该政策无关.