使用SpringSecurity来实现系统资源权限管控,在登录页面,登陆成功后默认会重定向到某个资源页面,对于某些架构(比如前后端分离),这种方式是不可取的,本篇经验就分享一下如何自定义登录成功的处理逻辑。注意:本篇经验会基于如下引用经验中构建的项目工程。 0如何通过UserDetailsService构建用户认证信息
工具/原料
1
IDEA
2
JDK1.8
方法/步骤
1
pom文件中引入 fastjson 依赖,用于向用户返回 json 格式的响应数据。
3
实现 AuthenticationSuccessHandler 接口中定义的方法,认证成功,返回给用户一个表示成功的 json 串。
4
SpringSecurity 配置文件中添加 MyAuthenticationSuccessHandler 的 bean 对象配置,用于注入到 form-login 的配置中。
5
将 MyAuthenticationSuccessHandler 对象注入到 form-login 配置中。
6
启动应用,并登录系统,返回 json 数据,和预期相符
注意事项
这种方式通常用于登录页面通过ajax的形式异步进行登录认证操作