首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 服务器 > Apache >

apache shiro RememberMe 为false的一个有关问题解说

2014-01-14 
apache shiro RememberMe 为false的一个问题解说刚刚有一个网友 问我一个问题说他登录的时候 设置了Userna

apache shiro RememberMe 为false的一个问题解说
刚刚有一个网友 问我一个问题说他登录的时候 设置了
UsernamePasswordToken token = new UsernamePasswordToken(
currUser.getAccount(), currUser.getPwd());
token.setRememberMe(true);

然后 在登录方法里看到 token 对象里的isRememberMe()方法返回的也是true
为什么到其他action方法里 返回SecurityUtils.getSubject().isRemembered()是false?

起初我也很奇怪 难道他们是两个不同的 调用?
带着这个疑问我查看了 shiro的源码

我首先看了 登录方法里的set方法
实在UsernamePasswordToken.class类里的

user标签 认证通过或已记住的用户    <shiro:user>          Welcome back John!  Not John? Click <a href="login.jsp">here<a> to login.      </shiro:user> authenticated标签 已认证通过的用户。不包含已记住的用户,这是与user标签的区别所在。    <shiro:authenticated>          [url=updateAccount.jsp]Update your contact information[/url].      </shiro:authenticated>  

就是说 如果是 authc的情况下 是不能和user并存的 而user级别 恰恰就是 RememberMe =true



很多时候 我们遇到问题的时候往往先把自己往错误的地方带 往错误的方向去走
这样才会迷茫 ,我们要先弄懂 原因必须追根溯源




热点排行