在系统中一般都有退出登录的操作。退出登录后,Spring Security进行了以下操作:
//退出登录配置
http.logout()
.logoutUrl("/logout")
.logoutSuccessUrl("/login.html")
.clearAuthentication(true)
.invalidateHttpSession(true);
在网页中添加退出登录超链接
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org"
xmlns:sec="http://www.thymeleaf.org/thymeleaf-extras-springsecurity5">
<head>
<meta charset="UTF-8">
<title>主页面</title>
</head>
<body>
<h1>主页面</h1>
<a href="/logout" rel="external nofollow" >退出登录</a>
</body>
</html>


我们也可以自定义退出成功处理器,在退出后清理一些数据,写法如下:
/**
* @Author yqq
* @Date 2022/05/17 18:09
* @Version 1.0
*/
public class LogoutSuccessHandler implements org.springframework.security.web.authentication.logout.LogoutSuccessHandler {
@Override
public void onLogoutSuccess(HttpServletRequest request, HttpServletResponse response, Authentication authentication) throws IOException, ServletException {
System.out.println("清楚一些数据");
response.sendRedirect("/login.html");
}
}
//退出登录配置
http.logout()
.logoutUrl("/logout")
// .logoutSuccessUrl("/login.html")
.logoutSuccessHandler(new LogoutSuccessHandler())
.clearAuthentication(true)
.invalidateHttpSession(true);
测试



到此这篇关于Spring Security实现退出登录和退出处理器的文章就介绍到这了,更多相关Spring Security退出登录和退出处理器内容请搜索html5模板网以前的文章希望大家以后多多支持html5模板网!
SpringBoot+WebSocket实现即时通讯的方法详解这篇文章主要为大家详细介绍了如何利用SpringBoot+WebSocket实现即时通讯功能,文中示例代码讲解详细,对我们学习或工
SpringBoot 二维码生成base64并上传OSS的实现示例本文主要介绍了SpringBoot二维码生成base64并上传OSS的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者
Spring boot 整合 Redisson实现分布式锁并验证功能这篇文章主要介绍了Spring boot 整合 Redisson实现分布式锁并验证,redisson是官方推荐的分布式锁实现方案,采用redis自身
springboot+redis实现简单的热搜功能这篇文章主要介绍了springboot+redis实现一个简单的热搜功能,通过代码介绍了过滤不雅文字的过滤器,代码简单易懂,对
在SpringBoot中使用HATEOAS的方法这篇文章主要介绍了在SpringBoot中使用HATEOAS的方法,HATEOAS是实现REST规范的一种原则,通过遵循HATEOAS规范,可以解决我
Spring多线程的使用以及问题详解在我们开发系统过程中,经常会处理一些费时间的任务(如:向数据库中插入大量数据),这个时候就就需要使用多线程,下