据我了解,GET不需要CORS头。实际上,我的请求没有执行飞行前OPTIONS请求。但是,在使用localhost:9000
作为客户端来源的Win8上的Chrome 52.0.2743.82 m中,我在jquery中执行xhr请求时出错。这是http -> https
连接。
它适用于Chrome 52中的同事Mac ...即使请求返回200状态,ERROR处理程序也会被调用。
我尝试过的事情:
我使用和不带--disable-web-security
标志执行了以下所有操作。
XMLHttpRequest无法加载 https://blah.example.com/dingbat/v1/recent。没有 '访问控制允许来源'标题出现在请求的上 资源。起源' http://localhost:9000'因此是不允许的 访问。
试图 $ .getJSON结果:与第一个子弹相同
//dead simple
$.ajax({
type: 'GET',
url: url,
success: function (jsonData, status) {
},
error: function (xhr, ajaxOptions, thrownError) {
}
});
这可能是这个 Chrome bug 的悄然增长,即使它已经在Chrome 48中修复了吗? https://bugs.chromium.org/p/chromium/issues/detail?id=582365