AJAX请求session失效,服务器端怎么重定向页面

问题描述

AJAX发起的请求,服务器端(Filter)如果不通过,如session失效了需要重定向到登陆页面,该怎么做?

解决方案

这个需要服务器端和客户端的配合,以jquery为例。首先,你的服务器端要能检测到未登录,并输出JSON格式的错误信息到前端,其次,在前端调用你需要自定义一个ajax请求方法,从而可以可以控制所有的ajax请求。关键就是需要在前端捕获到服务端返回的错误,由前端做重定向处理。function send(......){//参数return jQuery.ajax({type: stype,url : url,data: data,success : sucCallback,// 成功处理方法error : errCallback,// 失败处理方法[color=red]complete: function(data){ [color=blue]// 判断data中是否有未登录信息 // 如果有,则退出[/color]},[/color]dataType: dtype});}

时间: 2024-11-01 10:04:20

AJAX请求session失效,服务器端怎么重定向页面的相关文章

ajax请求Session失效问题_AJAX相关

最近由于一个项目,模块切换为ajax请求数据,当Session失效后,ajax请求后没有返回值,只有响应的html: <html> <script type='text/javascript'>window.open('http://192.168.0.118:8080/welcomeAction/loginUI.do','_top'); </script> </html> 现在Ajax在Web项目中应用广泛,几乎可以说无处不在,这就带来另外一个问题:当Aj

ajax请求Session失效问题

最近由于一个项目,模块切换为ajax请求数据,当Session失效后,ajax请求后没有返回值,只有响应的html: <html> <script type='text/javascript'>window.open('http://192.168.0.118:8080/welcomeAction/loginUI.do','_top'); </script> </html> 现在Ajax在Web项目中应用广泛,几乎可以说无处不在,这就带来另外一个问题:当Aj

Ajax请求session失效该如何解决_AJAX相关

一般来说我们的项目都有登录过滤器,一般请求足以搞定.但是AJAX却是例外的,所以解决方法是设置响应为session失效. 一共分为过滤器和页面JS两个部分的设置,先看过滤器的修改: import java.io.IOException; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletExcep

Ajax请求session失效该如何解决

一般来说我们的项目都有登录过滤器,一般请求足以搞定.但是AJAX却是例外的,所以解决方法是设置响应为session失效. 一共分为过滤器和页面JS两个部分的设置,先看过滤器的修改: import java.io.IOException; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletExcep

Ajax Session失效跳转登录页面的方法_AJAX相关

在Struts应用中,我们发出的请求都会经过 相应的拦截器进行相关处理,一般都会有一个用户登录拦截(Session失效拦截):一般请求的话,如果Session失效时,我们会跳到登录页面,可是如果我们采用AJAX请求时,将会返回登录页面的HTML代码,这肯定不是我们想要的,那么我们如何解决呢?请看以下步骤: 一.建立拦截器 package com.xxx.planeap.interceptor; import javax.servlet.http.HttpServletRequest; impor

ajax请求 session超时

问题描述 ajax请求 session超时 ajax请求,session超时的情况下,怎么跳转到首页?通过request.getHeader(""x-requested-with"")可以获取到是ajax请求的,也知道将信息放到response,但是页面上要写一个jquery.ajaxSetup({...})处理ajax请求时session的超时,这个是怎么用的???放到什么位置 解决方案 超时的时候你返回一个特殊信息,如offline,ajax判断返回信息存在of

AJAX请求也会重新刷新整个页面?

由于对HTML的一些内置行为不理解,所以面对今天的AJAX请求也会重新绘页面百思不得其解. 后来,请教跟伟哥同属前端组的杨成之后,才知道是由于button的默认行为导致的. 需要阻止这种标签行为,才可以自由使用AJAX. 涨知识啦... 原来的HTML. <button class="btn-multi-status uk-button uk-button-primary" status_type = "restart"><i class=&quo

完美解决ajax访问遇到Session失效的问题_AJAX相关

最近由于一个项目,模块切换为ajax请求数据,当Session失效后,ajax请求后没有返回值,只有响应的html:<html><script type='text/javascript'>window.open('http://192.168.0.118:8080/welcomeAction/loginUI.do','_top');</script></html> 现在Ajax在Web项目中应用广泛,几乎可以说无处不在,这就带来另外一个问题:当Ajax请求

ajax 操作全局监测,用户session失效的解决方法_AJAX相关

ajax 操作全局监测,用户session失效的解决方法 jQuery(function ($) { // 备份jquery的ajax方法 var _ajax = $.ajax; // 重写ajax方法,先判断登录在执行success函数 $.ajax = function (opt) { var _success = opt && opt.success || function (a, b) { }; var _opt = $.extend(opt, { success: functio