首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何确定Java Servlet / Spring会话超时和良好实践

如何确定Java Servlet / Spring会话超时和良好实践
EN

Stack Overflow用户
提问于 2015-10-08 15:45:41
回答 1查看 40关注 0票数 0

我注意到jsessionId将被发送到服务器,因此在过滤器中,我实际上可以从cookie中获得过期的会话id。

可以像下面这样放一个过滤器逻辑吗?

代码语言:javascript
运行
复制
Cookie jsessionCookie = getSessionIdCookies(request);
Session session = request.getSession(false);
if (session == null || !(jsessionCookie.getValue().equals(session.getId())) {
    //this should be a timeout handling
    ....
} else {
    // normal moving forward
}

由于新请求(可以通过设置特定的过滤规则将其过滤掉)也可能导致session == null,我还能更多地依赖!(jsessionCookie.getValue().equals(session.getId())

或者甚至将request.getSession(false)更改为request.getSession(),并始终将cookie与会话id进行比较?

有没有更好的会话超时管理实践?

EN

回答 1

Stack Overflow用户

发布于 2015-10-08 15:48:24

您可以在ServletContext上注册HttpSessionListener,以便在会话无效时收到通知。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33009639

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档