使用ehcache+Interceptor缓存登录问题
@JFinal 你好,想跟你请教个问题:
在使用ehcache缓存登录时遇到个问题。
在使用Interceptor拦截登录时,需要取得ehcache的key,我是希望将ssid作为key来使用,但在Interceptor中如何能够取到呀~
譬如说,登录成功后,生成个ssid,然后CacheKit.put(CommonConst.CACHE_USER_SESSION, ssid, user);
但在Interceptor中,如何判断是否有用户登录了呢?
希望您能给提供一个思路~万分感谢啦~
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(9)
@jFinal 我没用过cache做登录,然后现在尴尬了,我是cachekit.put("userCache","user",user);我还以为和session一样呢
@jFinal 能不能给我一个用cache登录简单的例子
那个uuid生成的key我怎么才能取到用户的信息
不使用cookie的 app,你可以在交互时额外传递数据,模拟cookie机制即可,自动添加url这种也是可以的
回复
非常感谢~最近有在试着实现模拟cookie或session。。。就是通过URL传递sessionID什么的
@JFinal 非常感谢您的解答~
如果使用cookie或者session的话,在非浏览器环境下,譬如说app下,就无法使用登录了吧~毕竟,app无法自动处理cookie或者session呢~
jfinal是否有方法能够取得当前连接用户(未登录)的唯一识别码呢~或者,在每个连接者的url后,自动加上uuid这种?是否可行呢?
学习了.
Ret 对象方便于将业务层的返回值传给控制层,而控制层又可以将其再传给view层,源码如下:
这个 ssid 建议生成 uuid,以防重复,然后将这个值在用户登录成功的时候放入 cookie中:setCookie("sessionId", uuid, maxAgeSenconds);
下面是 jfinal.com 官网的相关代码片段,希望对你有帮助:
上面是 LoginController 相关代码,其中的 Ret 对象是业务层返回的对象,部分片段如下:
学习一下