首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >页面刷新后,Spring并发会话控制错误消失。

页面刷新后,Spring并发会话控制错误消失。
EN

Stack Overflow用户
提问于 2013-02-06 22:42:29
回答 2查看 2.1K关注 0票数 0

我的流量:

  1. 启动User1在browser1中的会话(session1)
  2. 以User1身份登录browser2 (session2)
  3. 刷新browser1中的页面-错误显示:“此会话已过期(可能是由于多个并发登录尝试作为同一个用户)。
  4. 再次刷新browser1中的页面-旧会话已成功恢复

我怎样才能通过session1呢?

我的spring配置:

代码语言:javascript
复制
<session-management session-fixation-protection="migrateSession">
    <concurrency-control max-sessions="1" error-if-maximum-exceeded="false"/>
</session-management>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-06-02 14:13:41

它使用的是“记住我”登录来登录您,again.You可以将您过期的会话重定向到另一个url,如下所示,并手动终止当前会话。

在安全配置中:

(只需添加过期的url属性)

代码语言:javascript
复制
.sessionManagement().sessionAuthenticationStrategy(concurrentSessionControlStrategy)
   .maximumSessions(1).maxSessionsPreventsLogin(false).expiredUrl("/users/expire-me")

在fwd api/url中:

代码语言:javascript
复制
@RequestMapping(value="expire-me", method=RequestMethod.GET)
@ResponseBody
public void expireSession(HttpServletRequest request,HttpServletResponse response) throws IOException {
    request.getSession(false).invalidate();
}

这就是我所做的,一切都很好。

票数 2
EN

Stack Overflow用户

发布于 2014-11-14 08:38:47

(另一项工作)您必须使用记住我身份验证,这是您的第一次浏览器重新登录。如果您希望它正常工作,请不要使用remember-me

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14740301

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档