/** * 通过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就好了, * */
|