我正在使用$.post()Ajax调用servlet,然后使用生成的HTML片段替换div用户当前页面中的元素.但是,如果会话超时,服务器会发送重定向指令以将用户发送到登录页面.在这种情况下,jQuery正在用div登录页面的内容替换元素,迫使用户的目光确实见证了罕见的场景.
如何使用jQuery 1.2.6从Ajax调用管理重定向指令?
所以我有这个jQuery AJAX调用,响应来自服务器的302重定向形式.我想采用这种重定向并将其加载到iframe中,但是当我尝试使用javascript警报查看标题信息时,即使firebug正确地看到它,它也会出现空值.
这是代码,如果它有帮助:
$j.ajax({
    type: 'POST',
    url:'url.do',
    data: formData,
    complete: function(resp){
        alert(resp.getAllResponseHeaders());
    }
});
我真的无法访问服务器端的东西,以便将URL移动到响应主体,我知道这将是最简单的解决方案,因此任何有关解析标头的帮助都会非常棒.
我使用jQuery ajax函数来访问Web服务,但是服务器不是返回带有描述问题的状态代码的响应,而是将请求重定向到具有200头的页面,描述问题.我无法对此进行任何更改,因此我需要以某种方式在客户端上解决它.
示例:请求转到某个找不到的URL,因此我收到302重定向到另一个位置.发送一个新请求,我收到200 OK,从而防止错误回调触发.
有什么方法可以阻止ajax请求跟随重定向,而是调用回调,最好是错误方法.或者,是否可以检测客户端中是否发生了重定向?
没有自定义标头的简单GET请求.响应按预期返回.可以访问正文中的数据,但不能访问标题.
当我尝试访问"etag"标题时,浏览器会引发异常:
拒绝得到不安全的标题"etag"
Chrome,Safari和Firefox的行为都一样.我没有在IE上测试它.
我在这里错过了什么?
我正在研究一个AJAX脚本,该脚本向缩短的URL发出GET请求,就像bit.ly链接一样.我如何实际获取最终/重定向页面的URL?
我可以从重定向页面获取响应标头,但它似乎不包含URL信息:
$.ajax({
  url: "http://www.thislinkredirects.com",
  success: function(data, status, xhr) {
    var response = $(data);
  },
  complete: function(xhr) {
    console.log(xhr.getAllResponseHeaders());
  }
});
结果:
Date: Tue, 23 Jun 2015 03:22:07 GMT
Allow: POST, GET, OPTIONS, PUT, DELETE
Server: lighttpd/1.4.35
X-Powered-By: PHP/5.3.3
Transfer-Encoding: chunked
Access-Control-Allow-Methods: POST, GET, OPTIONS, PUT, DELETE
Content-type: text/html
Access-Control-Allow-Origin: *
Access-Control-Allow-Headers: accept, authorization
我无法控制发出get请求的服务器.
Hi Unsplash 允许通过以下方式从其网站加载随机图像:
https://source.unsplash.com/random/2560x1440
如果每次 url 生成随机静态图像时我都从浏览器访问 url,例如:
https://images.unsplash.com/photo-1488616268114-d949a6d72edf?ixlib=rb-0.3.5&q=80&fm=jpg&crop=entropy&cs=tinysrgb&w=2560&h=1440&fit=crop&s=a7f66c8417bcf79d2503b84db64c7b1a
我想通过第一个网址请求 jquery 或 js 中的图像,并作为响应获取第二个网址。这可能吗?