是否可以发送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应该 透明地 遵循重定向……不幸的是,在幕后,而不是以您可以避免的方式。
这是尝试使事情变得更容易的方式,如果资源移动等,但是,当设计并制定规范时,所有这些重定向服务都不存在。只是没有太多其他需要阻止它的行为或能力了,我认为随着许多重定向进入网络,我们不会看到增加的功能,但是谁知道每种浏览器何时会支持它。
问题内容: 我不明白为什么Java 不遵循从HTTP到HTTPS URL的HTTP重定向。我使用以下代码在https://httpstat.us/上获取页面: 该程序的输出为: 对http://httpstat.us/301的请求返回以下(缩短的)响应(这似乎绝对正确!): 不幸的是,Java HttpURLConnection不遵循重定向! 问题答案: 仅当重定向使用相同的协议时,才遵循重定向。
我正在尝试使用重定向规则设置静态web托管。在我的应用程序中,任何具有前缀api/(http://web.company.com/api)的请求都应该重定向到具有相同前缀(http://api.company.com/api)的另一个主机。我已按以下方式设置路由规则: 但请求没有被正确重定向。控制台中有两个不同的错误: XMLHttpRequest无法加载http://api.company.co
我在JMeter上遇到了一个奇怪的问题,几乎像是一个bug。我正在运行版本5.1.1 r1855137。 我有一个标准的和一个。HTTP请求设置为。它还设置为,并以最多6次并行下载下载所有嵌入式资源。缓存管理器被设置为,并使用。缓存中设置了5000个元素的限制。 我创建了一个线程组,其中有一个循环控制器。HTTP请求采样器位于这个线程组和循环中。初始请求中的页面返回。我还注意到,在标题中有。第一次
问题内容: 我目前正在用Go语言编写一些与REST API交互的软件。我正在尝试查询的REST API端点返回HTTP 302重定向以及HTTP Location标头,指向资源URI。 我正在尝试使用Go脚本抓取HTTP Location标头,以供以后处理。 这是我目前为实现此功能正在做的事情: 对我来说,这有点像是个骇客。通过覆盖的功能,我实际上被迫将HTTP重定向视为错误(不是)。 我已经看到
问题内容: 我有一个网站,所有请求都通过(无提示)被无提示地重定向到,然后PHP用于显示正确的页面(通过解析)。 我想知道是否也可以将POST数据提交到假地址? 我目前有这样的表格… 我的规则是 我的支票工作正常。 但是,这似乎删除了应该发送给它的所有POST数据。 有没有办法保留帖子数据?我不想使用GET,因为它不能发送太多信息,尽管使用简单的查询表可能不会出现问题。 这是我重定向到的 问题答案
例如,我试图向www.testjson发出GET请求。com/json,但响应是从不同的域URL检索的,例如www.testjson。com/confirmJson。 Spring mvc是否支持此功能,特别是restTemplate.exchange功能。 我目前正在做这类事情,但我得到一个500状态码(内部服务器错误),无法找出到底是什么导致了错误。 那么RestTemplate真的可以管理重