如何在Windows上允许没有CORS头的localhost GET请求?

时间:2016-07-27 23:23:23

标签: javascript jquery google-chrome xmlhttprequest cors

据我了解,GET不需要CORS头。实际上,我的请求没有执行飞行前OPTIONS请求。但是,在使用localhost:9000作为客户端来源的Win8上的Chrome 52.0.2743.82 m中,我在jquery中执行xhr请求时出错。这是http -> https连接。

它适用于Chrome 52中的同事Mac ...即使请求返回200状态,ERROR处理程序也会被调用。

我尝试过的事情:

我使用和不带--disable-web-security标志执行了以下所有操作。

  • 无修改:结果:chrome检查器中的空响应加上控制台中的错误。 Fiddler显示包含数据的有效响应。
  

XMLHttpRequest无法加载   https://blah.example.com/dingbat/v1/recent。没有   '访问控制允许来源'标题出现在请求的上   资源。起源' http://localhost:9000'因此是不允许的   访问。

  • 设置async false。结果:解析错误,它期望jsonp
  • set header Content-Type:text / html或application / json结果:200 响应不再为空(在响应选项卡中显示所需的json), 但仍然有CORS错误,并且未调用成功。
  • 试图 $ .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

0 个答案:

没有答案