清除缓存时为什么会话丢失或结束。虽然会在服务器上提到会话。我是java开发人员,我从HttpServletRequest
对象获得了会话。
我们在服务器端管理会话。那它与浏览器和客户端有什么关系呢?为什么我们的网站在清除缓存时被注销?
我用我的Gmail帐户试了一下。当我关闭浏览器并再次打开Gmail时或当我清除缓存时它显示我已注销。我确实谷歌,但无法得到令人满意的答案。任何人都可以清楚吗?
答案 0 :(得分:1)
跟踪会话的标准机制是cookie。清除浏览器的缓存以及cookie也会导致在发出请求时没有会话ID发送到服务器,因此除了开始新会话之外别无选择。
答案 1 :(得分:0)
您的服务器端框架正在客户端计算机上使用cookie来跟踪会话。当它消失时,会丢失会话上下文。
答案 2 :(得分:0)
当您说“清除缓存”时,我假设您正在谈论您的浏览器缓存。
如果是这样,当您清除缓存时,您正在执行的操作之一是删除您访问的网站设置的所有cookies。 cookie是保存网站(例如GMail)用来确定您是早先登录为“Abhendra Singh”的人的标识符。
答案 3 :(得分:0)
服务器上的Session对象只是表示。默认情况下,会话信息由浏览器中的cookie维护,cookie名为JSESSIONID
。您可以找到更多here,请参阅BalusC的答案。
如果在浏览器JSESSIONID
上禁用cookie,则必须将其作为参数附加到URL。这意味着,如果需要重定向,您必须致电HttpServletResponse#encodeRedirectURL或使用c:url
标记获取网页中的链接。