Spring Session如何在单个浏览器中支持多个会话?

New*_*bie 5 spring spring-security spring-session

Spring Session文档描述了其使用优势之一,如下所示.

允许单个浏览器以透明方式同时具有多个会话.例如,许多开发人员希望允许用户使用多个帐户进行身份验证,并在它们之间切换,类似于gmail中的方式.

从技术上讲,如何利用这一优势,如何实施?

Rob*_*nch 5

从Spring Session RC1开始,Spring Session将在一个cookie中跟踪所有Sessions.使用这样的模式:

0 defaultsession alias sessionid alias2 sessionid2
Run Code Online (Sandbox Code Playgroud)

然后,您可以通过确保查询参数"_s"和别名的值来选择您正在使用的会话.例如,请求URL/index?_s = alias2将使用sessionid2.如果_s未定义,则使用会话别名0.这意味着/ index将导致使用默认会话.您可以在CookieHttpSessionStrategy上找到此文档

有关工作示例,请参阅用户示例.