apache shiro org.apache.shiro.session.UnknownSessionException处理

ぃ、小莉子 提交于 2020-03-16 02:28:59

/**
* 通过debug,F5一步步高度下去发现,
*
* 1.session过期时间太短,导致session过期找不到session报错,
* 这里org.apache.shiro.web.session.mgt.DefaultWebSessionManager设置session时间
* globalSessionTimeout时间太短 这个单位是毫秒,建议设置长点时间
* 2.时间修改长后,还是报错,但是可以执行  SecurityUtils.getSubject().logout();程序执行到return "index";报错

* logout可以安全正确退出,session也可以删除,授权信息,认证信息也会被清除(debug进去可以看到的)

* 但是如果直接return就会报错,如
* org.apache.shiro.session.UnknownSessionException: There is no session with id
* debug进去发现,直接return程序还是会查找你刚才logout的sessionId,因为logout了,当然是找不到session了,理所当然报错
* 使用redirect就好了,
*
*/

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!