1
我正在使用Jetty的会话管理并希望使用'记住我'选项实现简单登录。动态设置会话cookie最大年龄
因此,如果用户不想被记住,我想让JSESSIONID cookie活到浏览器会话关闭。如果用户选择记住,cookie将在30天内过期。
我使用SessionCookieConfig
在启动时配置cookie详细信息,我无法更改每个请求。
那么有没有办法来动态改变每个登录请求的最大年龄? 我能看到的唯一方法是让从请求中的cookie,然后改变最大年龄:
//in LoginServlet
doPost(HttpServletRequest request, HttpServletResponse response) {
//... Get remember me option from request
request.getCookies();
//... Find cookie in array by name JSESSIONID
if (rememberMe) {
sessionCookie.setMaxAge(60 * 60 * 24 * 30);
} else {
sessionCookie.setMaxAge(-1);
}
}
不过,我想尽可能多地从处理会话不要和它留给容器。
还有其他的选择吗?
请编辑您的第一个链接到有用的东西或删除它。 – emirb