XHR HEAD请求是否可能不跟随重定向(301302)

是否可以发送xhr HTTP HEAD请求以仅获取第一个请求的标头响应,而不像重定向一样自动跟随301、302?我只对获取URL的新位置感兴趣。例:

var xhr = new XMLHttpRequest();

xhr.onreadystatechange = function(data) {

if (xhr.readyState == 4) {

if (xhr.status == 301 || xhr.status == 302) {

// Get new location url don't GET it

}

}

};

xhr.open('HEAD', url, true);

xhr.send();

http://www.w3.org/TR/XMLHttpRequest/#infrastructure-for-the-send-

method似乎指定应遵循请求,有没有办法阻止这种情况?

回答:

没有,这不是您可以停止的公开行为。

这是因为您已经链接了规范,所以指定的行为是XmlHttpRequest应该 透明地 遵循重定向……不幸的是,在幕后,而不是以您可以避免的方式。

这是尝试使事情变得更容易的方式,如果资源移动等,但是,当设计并制定规范时,所有这些重定向服务都不存在。只是没有太多其他需要阻止它的行为或能力了,我认为随着许多重定向进入网络,我们不会看到增加的功能,但是谁知道每种浏览器何时会支持它。

以上是 XHR HEAD请求是否可能不跟随重定向(301302) 的全部内容, 来源链接: utcz.com/qa/400173.html

回到顶部