我们在使用多个标签时遇到问题,因为它共享同一个会话。有什么替代品吗?当有人使用选项卡或CTRL + N时,我们可以创建一个唯一的会话。
如果这很重要,那就是Java EE / Struts2企业应用程序。
答案 0 :(得分:1)
这是所有以服务器为中心的Web应用程序所面临的问题,它并非特定于Java EE。问题是大多数浏览器基于每个用户存储cookie,而不是每个选项卡。此外,此行为通常对用户不透明,从而增加了混淆。我能想到的一些解决方案(虽然它们都不是真的令人满意):
答案 1 :(得分:0)
我知道没有简单的方法可以实现这一目标。
解决此问题的常用方法是更改应用,以便它可以使用多个标签处理用户(如果可能)。
如果用户在浏览多步骤表单时按下Ctrl + N,有几种解决方法可以“禁用”旧窗口,但是您必须提供更详细的信息。
答案 2 :(得分:0)
通常,浏览器实例被视为用于会话跟踪目的的单个用户/实体。特别是如果您使用cookie来跟踪会话。我不确定我是否喜欢允许不同的标签有不同的会话。基于Web的应用程序感觉不直观。当然,所有恕我直言。
那就是说,如果你想改变它,你将不得不想出一个自定义的实现。也许您可以为不同选项卡的URL生成并附加不同的会话ID。从来没有试过这个,所以不知道它会有多么容易或困难。