我已经定义了以下处理用户会话的规则。
这里在最后一条规则中,如何拦截Spring的会话破坏机制? 如果从客户收到确认,如何跳过会话销毁?
谢谢,
答案 0 :(得分:0)
不要在捕获会话超时事件后从服务器重新激活会话,让我建议一个更好的方法。
由于您希望只要浏览器处于打开状态就保持会话处于活动状态,即使用户没有访问(交互)该站点,也可以从页面向服务器发送Ajax ping。
这个答案就是一个例子 - https://stackoverflow.com/a/3877867/6352160
这将解决这两个问题 - 当用户关闭浏览器选项卡时自动关闭会话。只要选项卡处于打开状态,就保持会话处于活动状我仍然建议您将Session变量保留为计数器,并允许会话仅在固定的时间限制内打开,以避免不必要的长时间运行会话。