缓存清除时为什么会话结束

时间:2013-01-25 09:35:30

标签: java session browser-cache

清除缓存时为什么会话丢失或结束。虽然会在服务器上提到会话。我是java开发人员,我从HttpServletRequest对象获得了会话。

我们在服务器端管理会话。那它与浏览器和客户端有什么关系呢?为什么我们的网站在清除缓存时被注销?

我用我的Gmail帐户试了一下。当我关闭浏览器并再次打开Gmail时或当我清除缓存时它显示我已注销。我确实谷歌,但无法得到令人满意的答案。任何人都可以清楚吗?

4 个答案:

答案 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标记获取网页中的链接。