问题描述
1.打开浏览器,登录某网站.2.session 在服务器端创建.3.关掉浏览器,再次访问该网站,提示没有登录.request是无连接的.也就是说,我打开网页,页面加载完成后,连接已经断掉了.服务器端是如何知道我关闭浏览器的,从而清楚session对象. 问题补充:andy_javahome 写道
解决方案
好像有个windows.onclose类似的方法,你可以查查看,然后向后台发一个invalid session的请求。不过如果是浏览器崩溃的话就不知道怎么办了。
解决方案二:
session死亡 发生在以下情况: 1.session的持有者(即客户端浏览器)在最大无活动等待时间(MaxInactiveInterval)内无任何响应或请求 2.session被调用invalidate()方法强制弊了 3.jsp服务器重起或发生中断(此时应该是所有session都当了) 用户关闭浏览器后标志着 a.session将不再发送请求到服务器 b.该session将不会有人调用他的invalidate()方法 所以,此时只能等待session自己超时死亡,如果设置了该session的MaxInactiveInterval为-1,那么这个session只有在第3种情况下才能死了.csdn有讨论http://topic.csdn.net/t/20040712/15/3167396.html
时间: 2024-08-01 04:57:52