isRequestedSessionValid

isRequestedSessionValid

我正在使用Spring Security 3.0,并创建了一个自定义过滤器来检查过期的会话。

我的问题是,即使我让会话过期或注销,request.isRequestedSessionValid()在我的过滤器中也返回true。如果我尝试访问任何安全页面,则确实会重定向到我的登录页面,因此我知道会话管理有效。

我的理解是,当Web会话超时时,该会话将自动失效,并且我还在Spring Security的注销元素中设置了invalidate-session。会话如何仍然有效?我在检查错误的值吗?

最佳答案

request.isRequestedSessionValid()本身甚至可以导致创建会话,即使在注销后也是如此。请使用request.getSession(false) != null进行检查,以确保未创建会话。

关于java - session 过期后,Java Request.isRequestedSessionValid()仍然为true,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5397992/

10-09 20:04