Session超时问题(AOP 过滤器)
public class TimeoutAttribute : ActionFilterAttribute
{
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
HttpContextBase context = filterContext.HttpContext;
HttpResponseBase response = filterContext.HttpContext.Response;
HttpRequestBase request = filterContext.HttpContext.Request;
if (context.Session["User"] == null)
{
if (request.IsAjaxRequest())
response.Status = "401 Session Timeout";
else
response.Redirect("/Home/Login");//返回登录页
filterContext.Result = new HttpUnauthorizedResult();//这一行保证不再执行Action的代码
response.End();//必须加上这句,否则返回前台status始终是200
return;
}
base.OnActionExecuting(filterContext);
}
}
前台:
error:function(a,b,c){
if(c.statusText=="Session Timeout"){
location="/home/login";
}
}
本文参考 I鱿鱼的博客。。。。。
Session超时问题(AOP 过滤器)的更多相关文章
- Shiro中session超时页面跳转的处理
问题描述 shiro在管理session后,在session超时会进行跳转,这里有两种情况需要考虑,一种是ajax方式的请求超时,一种页面跳转请求的超时. 本文从这两个方面分别考虑并处理. ajax请 ...
- session超时跃出iframe并跳到登陆页面(转载)
session超时跳出iframe并跳到登陆页面 在网页编程时,我们经常需要处理,当session过期时,我们要跳到登陆页面让用户登陆,由于我们可能用到IFrame框架,所以我们我登陆页面需要显示在整 ...
- Filter实现session超时自动跳转到login页,超过试用期不许登录
新建一个过滤器 package com.autumn.filter; import com.autumn.pojo.Users; import javax.servlet.*; import java ...
- java Servlet Filter 拦截Ajax请求,统一处理session超时的问题
后台增加filter,注意不要把druid也屏蔽了 import java.io.IOException; import javax.servlet.Filter; import javax.serv ...
- ajax提交session超时跳转页面使用全局的方法来处理
来自:http://www.jb51.net/article/43770.htm 如果是ajax提交,超时时从服务器发出的跳转命令就不会起作用,所以如果是session超时,而且是在ajax请求,就在 ...
- Java设置session超时(失效)的三种方式
1. 在web容器中设置(此处以tomcat为例) 在tomcat-6.0\conf\web.xml中设置,以下是tomcat 6.0中的默认配置: <!-- ================= ...
- session超时时间设置方法
session超时时间设置方法 由于session值之前没有设置,以至于刚登录的网站,不到一分钟就超时了,总结了一下,原来是session过期的原因,以下是设置session时间的3个方法: 1. 在 ...
- Session超时处理
1.web.xml 添加配置: <!-- session超时 --> <filter> <filter-name>sessionFilter</filter- ...
- ASP.NET多次点击提交按钮以及Session超时和丢失过期问题
1.ASP.NET防止多次点击提交按钮 对于一个按钮,要让变成恢色的,只要this.disabled=true就可以了,可是在.NET里,添加了OnClick事件后,就无法提交信息了.所以要加上以下代 ...
随机推荐
- vmware esxi 过期,激活
首先我们打开vSphere Client,登录esxi主机 他会提示你,说你的esxi主机的评估期还剩多长时间 我们现在去激活,我们下载esxi的注册机 然后点击配置--->已获许可的功能--- ...
- SQL SERVER树形结构数据——批量删除分组数据
定义函数获取某结点下所有子结点: CREATE FUNCTION [dbo].[fn_GetSubGroupInfoById] ( @id AS INT --某分组Id ) RETURNS @SubG ...
- 使用B::Deparse模块对perl代码反汇编
Perl用很多默认操作和习惯用法,如果对某些代码不确定,perl编译器的真实理解方式,可以用Deparse模块反汇编看一下. 比如下面代码: while(<STDIN>){ print & ...
- [sql]mysql启停脚本
写了个较为完善的mysql多实例的启动停止脚本. [root@lanny 3307]# cat mysql #!/bin/sh [ $# != 1 ]&&{ echo "US ...
- IServerChannelSinkProvider
(一) Remoting框架图 这是msdn上关于Remoting客户端与服务器端进行通信的示意图.客户端与服务端的通信是通过发送消息来实现的.消息的处理是由客户端,服务端创建的一系列的通信信道来处理 ...
- Re-ID with Triplet Loss
一篇讲Person Re-ID的论文,与人脸识别(认证)有非常多相通的地方. 文章链接: <In Defense of the Triplet Loss for Person Re-Identi ...
- WPF中DependencyObject与DependencyProperty的源代码简单剖析
Windbg调试WPF的依赖属性中提到了wpf的DependencyObject中DependencyProperty是怎样调试查看的. 从中我们看出DO(DependencyObject)与 DP( ...
- Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE 解决方法
最近在做真机测试的时候,经常出现Installation error: INSTAL L_FAILED_INSUFFICIENT_STORAGE这个问题,导致apk没法安装到是手机上,在eclipse ...
- SQL语句的一些基本使用以及一些技巧
#SELECT 列名1, 列名2, from 表明 #SELECT id,title,content,type from news 效率相对较高#SELECT * from news *代表所有字段, ...
- C#中一道关于多线程的基础练习题——模拟仓库存销过程
题目:模拟生产.入库.销售(50分) 假设某企业自产.自存.自销,需要将工厂生产的各类产品不定时的运到仓库,与此同时,需要将仓库中的货物运往超市和商场中进行销售,请编写一个程序模拟此过程(主要是存取这 ...