我已经定义了处理用户会话的以下规则。我们可以在春季的会话超时之前添加条件吗?
- 当用户登录HttpSessionListener的sessioncreate()将被调用并将在数据库中将用户状态设置为在线。
- 当用户注销sessiondestroy()的HttpSessionListener将被调用,将设置为脱机的数据库用户状态..
- 当用户关闭浏览器/标签,使浏览器的卸载AJAX调用/ some_other事件摧毁了会议。
- 由于我们无法完全依赖浏览器事件,因此在服务器端也使用session_timeout。在会话超时事件上,首先进行从服务器到客户端的验证呼叫,并确认他/她是否仍然可用。如果收到来自客户端的确认,则表示浏览器选项卡仍处于打开状态。所以我们不会破坏会议。
在这里,在最后一条规则,如何截获会话破坏春天的机制? 如果从客户端收到确认,如何跳过会话销毁?
感谢,
只是为了澄清一下,只要浏览器处于打开状态,是否要保持活动状态?即使用户没有在屏幕上执行任何操作? –
是会话应该是活动的。我有一个要求,随机选择用户。所以在那之前他会等着。 –
正如你已经发送浏览器的卸载事件的一些事件,其罚款尽快通过Ajax请求自带了采取行动的一些参数无效会话=“注销”执行服务器端注销和安全方面,你可以设置最大不活动超时由设置session.setMaxInactiveInterval(15 * 60); // inseconds –