针对同一浏览器的不同选项卡的不同会话

时间:2014-04-01 09:52:30

标签: java session

我使用timestamp直到nano秒作为用户会话,比如标签A有session1而用户打开标签B说这个会话是session2,现在session1只在我想要的一些文件上传活动完成后才被激活session2仍然有效。

如何在不使用Cookie的情况下执行此操作?

2 个答案:

答案 0 :(得分:0)

你看过html5 sessionStorage / localStorage吗?

这些apis运行客户端存储设施非常类似于cookie,您可以使用它来管理会话。数据库的生命周期是相应选项卡/窗口的生命周期(ssessionStorage)或两个连续删除相关浏览器数据之间的间隔;后者可能取决于浏览器的偏好(例如,在隐私模式下或在明确的用户请求下关闭标签/窗口后自动)。

首先,mdn有话要说。还有a full-fledged tutorial on html5rocks

详尽的深入w3c standard详细介绍了程序化(javascript)界面。

api不提供在客户端和服务器之间交换信息的工具。处理此部分的一个选项是将信息编码为通过ajax调用/接收的URL(客户端 - >服务器)或http头(服务器 - >客户端)。

最后警告:出于安全原因,不以这种方式存储身份验证数据

答案 1 :(得分:0)

  

说标签A有session1,用户打开标签B说这个会话是session2

这已经不可能了。两个选项卡都将在同一会话中。例如,如果选项卡B因登录而创建了新会话,则选项卡A现在将位于新会话中。

  

现在session1仅在某些文件上传活动

后失效

不会发生。

  

在这个时间点完成,我希望session2仍然有效。

它仍然是。如果会话1与会话2不同,则会被销毁。