在系统中一般都有退出登录的操作。退出登录后,Spring Security进行了以下操作:
- 清除认证状态
- 销毁HttpSession对象
- 跳转到登录页面
//退出登录配置
http.logout()
.logoutUrl("https://blog.csdn.net/logout")
.logoutSuccessUrl("/login.html")
.clearAuthentication(true)
.invalidateHttpSession(true);
在网页中添加退出登录超链接
主页面
主页面
退出登录
我们也可以自定义退出成功处理器,在退出后清理一些数据,写法如下:
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("https://blog.csdn.net/logout")
// .logoutSuccessUrl("/login.html")
.logoutSuccessHandler(new LogoutSuccessHandler())
.clearAuthentication(true)
.invalidateHttpSession(true);
测试



