java - Spring boot HttpSession中会话超时时自动重定向到登录页面
问题描述
在 Spring 启动应用程序中。当会话超时时,注销用户并重定向到登录页面。当用户再次登录时,导航到上次访问的页面。我正在使用 JDBC HttpSession
。请帮我解决这个问题。
@GetMapping("/")
public String home(Model model, HttpSession session) {
@SuppressWarnings("unchecked")
List<String> messages = (List<String>) session.getAttribute("MY_SESSION_MESSAGES");
if (messages == null) {
messages = new ArrayList<>();
}
model.addAttribute("sessionMessages", messages);
System.out.println("Session Det ------------------" + model.toString());
return "index";
}
@PostMapping("/persistMessage")
public String persistMessage(@RequestParam("msg") String msg, HttpServletRequest request) {
@SuppressWarnings("unchecked")
List<String> msgs = (List<String>) request.getSession().getAttribute("MY_SESSION_MESSAGES");
if (msgs == null) {
msgs = new ArrayList<>();
request.getSession().setAttribute("MY_SESSION_MESSAGES", msgs);
}
msgs.add(msg);
request.getSession().setAttribute("MY_SESSION_MESSAGES", msgs);
return "redirect:/";
}
@PostMapping("/destroy")
public String destroySession(HttpServletRequest request) {
request.getSession().invalidate();
return "logout";
}
解决方案
推荐阅读
- java - 访问令牌实现的spring security openid连接请求不符合cas api要求
- azure-devops - 应用网关应用服务访问限制
- excel - 通过不同和特定的工作表循环代码
- python-3.x - DistutilsError: 找不到合适的 Requirement.parse('setuptools-scm') 分布
- javascript - 如何通过 Javascript 动态添加关键帧?
- java - 使用 HTTPUrlConnection 在 Post Request 中发送 multipart/form-data
- linux - 在 Google VM 上运行两台服务器
- javascript - 如何在打字稿界面中定义索引属性
- javascript - TypeError:无法根据 id 读取属性“组件”
- javascript - Heroku 上的 Python 烧瓶服务器