保持多个会话

问题描述 投票:0回答:1

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

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

想在前端使用localstorage会有一些用户数。我们将在URL中传递当前用户。例如,在Tab1中,URL将像http://localhost:8080/account/user1/,在tab2中它将是http://localhost:8080/account/user2/

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

javascript java servlets
1个回答
0
投票

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

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

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


请注意,此功能一直是版本2.1.2.RELEASE的removed

11.4。掉线支持

作为对HttpSessionStrategy的更改的一部分,它与来自被动世界的对应物的对齐,已删除了在单个浏览器实例中管理多个用户会话的支持。未来版本正在考虑引入新的API来替换此功能。

© www.soinside.com 2019 - 2024. All rights reserved.