【问题标题】:Safari xhr (AJAX) requests w/ cross-domain redirect fails带有跨域重定向的 Safari xhr (AJAX) 请求失败
【发布时间】:2016-01-07 18:11:42
【问题描述】:

如何重现问题

  1. 使用 Safari 向服务器发出 AJAX 请求
  2. 让服务器以 302 响应到不同的域

如果这些条件中的任何一个满足,它就会起作用。

  1. 使用其他浏览器,它可以工作。
  2. 让服务器重定向到同一个域,它可以工作。

.

Load: function (in_url, in_cb, in_responseType) {
  var xhr = new XMLHttpRequest();
  xhr.open('GET', in_url, true);
  xhr.onload = function () {
    if (xhr.status === 200) {
      in_cb(null, xhr.response);
    } else {
      in_cb(new Error('[Loader] Could not fetch from: '+in_url+', status: '+xhr.status));
    }
  };
  xhr.onerror = function (error) {
    in_cb(error);
  };

  xhr.send();
}

【问题讨论】:

标签: javascript safari xmlhttprequest cors http-status-code-302


【解决方案1】:

bug 已修复。
Safari 10.1 (WebKit 603.1.30) 是第一个不受影响的版本。

【讨论】:

  • 谢谢!不幸的是,我很久以前就问过我不再有代码可以测试了。如果有人可以确认它已修复,我会将您的回复标记为正确
猜你喜欢
  • 2015-01-28
  • 2012-11-08
  • 1970-01-01
  • 2016-07-26
  • 2014-11-22
  • 1970-01-01
  • 2015-05-13
  • 1970-01-01
  • 2014-08-22
相关资源
最近更新 更多