维持多个会议

时间:2019-03-26 07:07:26

标签: javascript java servlets

在一种情况下,我们需要像维护Google帐户一样维护多个会话。 用户可以在不同的选项卡中添加多个帐户,所有选项卡都有其特定的内容。例如,在Tab1中登录了user1,在Tab2中登录了user2

我们在前端和JAVA中使用Angular。

考虑在前端使用localstorage,这将具有Array of users。我们将在URL中传递当前用户 例如:在Tab1中,URL将像http://localhost:8080/account/user1/,在Tab2中,URL将是http://localhost:8080/account/user2/

现在的问题是,两种情况下HttpSession都会不同,并且在代码中我们在HttpSession中设置了一些属性。 根据我的理解,ServletContainer将管理不同的会话,并且可以使用sessionId进行标识。我看到的问题是将请求中的sessionId传递给Java的方式,以便我的服务器代码具有该会话。 例如:如果打开了tab1,则应选择与user1相关的会话,如果打开了tab2,则应选择与user2相关的会话。

1 个答案:

答案 0 :(得分:0)

使用 Spring Session API 版本1.3.4 。发布-如官方文档here中所述。

  

Spring Session提供了用于管理   用户的会话信息。

     

多个浏览器会话-Spring Session支持管理多个   单个浏览器实例(即多个浏览器实例)中的用户会话   经过身份验证的帐户(类似于Google)。


请注意,此功能已从版本2.1.2的removed开始发布

  

11.4。放弃支持

     

作为HttpSessionStrategy更改的一部分,它与响应世界中的对应对象保持一致,   支持在单个浏览器中管理多个用户的会话   实例已被删除。引入新的API来替代   将来的版本中正在考虑使用此功能。