用springboot写一个登出用户注销
时间: 2024-03-09 22:23:56 浏览: 80
1. 首先,在Controller中创建一个RequestMapping映射,用于处理用户注销请求。
```java
@Controller
public class LogoutController {
@RequestMapping(value = "/logout", method = RequestMethod.GET)
public String logout(HttpServletRequest request, HttpServletResponse response) {
// 实现用户注销逻辑
return "redirect:/login";
}
}
```
2. 在注销方法中,我们需要通过HttpServletRequest对象获取当前用户的Session,并调用invalidate()方法来使Session失效。同时,我们还需要调用HttpServletResponse对象的addCookie()方法来删除Cookie中的用户凭证信息。
```java
@Controller
public class LogoutController {
@RequestMapping(value = "/logout", method = RequestMethod.GET)
public String logout(HttpServletRequest request, HttpServletResponse response) {
HttpSession session = request.getSession(false);
if (session != null) {
session.invalidate();
}
Cookie[] cookies = request.getCookies();
if (cookies != null) {
for (Cookie cookie : cookies) {
if (cookie.getName().equals("token")) {
cookie.setMaxAge(0);
response.addCookie(cookie);
break;
}
}
}
return "redirect:/login";
}
}
```
3. 最后,我们在页面上添加一个注销按钮,用于触发注销请求。
```html
<a href="/logout">注销</a>
```
这样,用户就可以通过点击注销按钮来实现用户注销了。
阅读全文