识别 session 超时并重定向它的步骤是什么,我尝试在 web.xml 中将 session 超时设置为 1 分钟,这是否会使 session 超时?
用于在过滤器中重定向:
if (request.getRequestedSessionId() != null && !request.isRequestedSessionIdValid())
response.sendRedirect(request.getContextPath() + "/login.html");
return;
}
else {
response.setHeader("Cache-Control", "no-cache, no-store, must- revalidate"); // HTTP 1.1.
response.setHeader("Pragma", "no-cache"); // HTTP 1.0.
response.setDateHeader("Expires", 0);
filterChain.doFilter(servletRequest, servletResponse);
}
但它没有重定向到登录页面,我在这里缺少什么?
还需要澄清的是:web.xml 中的 url-pattern 标记是否应该具有重定向页面地址?
<filter-mapping>
<filter-name>SessionTimeoutCookieFilter</filter-name>
<url-pattern>login.html</url-pattern>
</filter-mapping>
请对此提出任何建议......
最佳答案
如果您使用的是 Apache Tomcat
,请在 web.xml
中尝试此操作
<session-config>
<session-timeout>30</session-timeout>
</session-config>
关于java - session 超时未发生,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23149203/