使用拦截器来检测用户是否登录
来源:互联网 发布:出租淘宝店铺有真的吗 编辑:程序博客网 时间:2024/05/17 05:17
在任何一个系统中,都会有登录界面,因为只有通过验证的用户才能访问网络上的资源,在桌应用程序中,系统的入口就只有一个,那就是main函数,但是在b/s这种结构中,我们可以向服务器请求任何一个页面,也就是说有多个入口,那么我们如何限制用户只能通过登录这个界面进入系统呢,实现的方法有很多,现在介绍一种比较常用的方法,使用structs2中的拦截器:
首先我们定义一个拦截器:
public class MyInterceptor implements Interceptor{public void destroy(){// TODO Auto-generated method stubSystem.out.println("拦截器销毁!");}public void init(){// TODO Auto-generated method stubSystem.out.println("拦截器初始化");}public String intercept(ActionInvocation invocation) throws Exception{// TODO Auto-generated method stubSystem.out.println("拦截器开始验证!");if(LoginAction.class==invocation.getAction().getClass()){return invocation.invoke();}User user=(User)invocation.getInvocationContext().getSession().get("user");if(user==null)return "fail";System.out.println("用户已经登录");return invocation.invoke();}}
然后在struts.xml中配置拦截器
<interceptors> <interceptor name="login" class="com.interceptor.MyInterceptor"></interceptor> <interceptor-stack name="mystack"> <interceptor-ref name="login"></interceptor-ref> <interceptor-ref name="defaultStack"></interceptor-ref> </interceptor-stack> </interceptors> <default-interceptor-ref name="mystack"></default-interceptor-ref>
这样如果用户请求登录页面,可以顺利通过,如果用户请求其他页面,就需要检查用户是否已经登录,如果没有登录,则跳回登录页面
- 使用拦截器来检测用户是否登录
- 检测用户是否登陆的拦截器
- 拦截器验证用户是否登录
- Struts开发一个权限验证拦截器来判断用户是否登录
- 过滤器用来拦截用户是否登录访问权限的问题(通过session来进行拦截)
- drupal7 检测用户是否登录
- structs2中的拦截器检测用户是否登陆
- vue路由切换拦截,在每次发生路由导航时检测用户是否登录
- struts2定义拦截器(Interceptor)检查用户是否已经登录
- 用Struts2的拦截器验证用户是否登录
- Struts2自定义拦截器,检查用户是否登录
- struts2用户是否登录拦截器,拦截之后异步跳转到登录页面
- 用户登录拦截器
- 拦截器过滤器登录检测
- Struts2自定义拦截器案例:验证用户是否登录拦截器
- MVC 检测用户是否已经登录
- ajax实现检测用户是否登录
- springmvc拦截器,用户登录拦截过程
- class_create的应用
- PowerDesigner12.5 下载及破解 破解补丁
- DDD(GDB图形前端)
- javascript中的闭包,花了半个小时才搞明白原理
- 孙子定理,求余定理
- 使用拦截器来检测用户是否登录
- MFC 窗口重绘
- java public protect default private 的作用域
- ireport 中文显示问题
- 浅谈内存读写
- PHP输出缓存控制详解 ob_start,flush,ob_flush
- ORA-01940: cannot drop a user that is currently connected
- Lmbda表达式的简单用例
- PHP浏览器关后还能执行的程序