相关疑难解决方法(0)

如何在jQuery Ajax调用之后管理重定向请求

我正在使用$.post()Ajax调用servlet,然后使用生成的HTML片段替换div用户当前页面中的元素.但是,如果会话超时,服务器会发送重定向指令以将用户发送到登录页面.在这种情况下,jQuery正在用div登录页面的内容替换元素,迫使用户的目光确实见证了罕见的场景.

如何使用jQuery 1.2.6从Ajax调用管理重定向指令?

javascript ajax jquery redirect

1319
推荐指数
26
解决办法
84万
查看次数

372
推荐指数
6
解决办法
18万
查看次数

在JavaScript中捕获302 FOUND

我使用jQuery向我的服务器发出一个AJAX POST请求,该请求可以返回状态为302的HTTP响应.然后,JavaScript只是向此URL发送GET请求,而我想在此响应中将用户重定向到URL.这可能吗?

javascript ajax jquery http-status-code-302

36
推荐指数
2
解决办法
9万
查看次数

如何获取jQuery.ajax响应状态?

有没有办法知道返回的jqXHR对象是否从另一个请求重定向?例如,拥有以下代码:

   jQuery.ajax({
            type:       'POST',
            url:        'http://example.com/page.html',
            complete:   function(response, status) {
                        console.log(response.statusCode);
                        // do something
                        }
        });
Run Code Online (Sandbox Code Playgroud)

如果使用301或302状态代码重定向ajax url,则响应将是重定向页面的结果,并将返回200(OK)状态代码.我认为这是一个jQuery的错误(不知道这是否是预期的恶作剧,因为最终的响应实际上是成功的)我不能得到原始响应Headers来检查是否存在Location Header,因为这是仅适用于重定向的请求.

具有上述代码的Firebug通过XHR记录这两个请求

http://example.com/page.html 302(暂时移动) http://example.com/redirect.html 200(确定)

但是jQuery只返回第二个请求的数据.

也许有办法从第一个请求中获取数据?或者获取响应URL并将其与原始请求中的URL进行比较?

ajax jquery redirect jqxhr

9
推荐指数
1
解决办法
1万
查看次数