springsecurity如何使用application/json接收数据
发表于:2025-01-19 作者:千家信息网编辑
千家信息网最后更新 2025年01月19日,这篇文章将为大家详细讲解有关springsecurity如何使用application/json接收数据,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。spring
千家信息网最后更新 2025年01月19日springsecurity如何使用application/json接收数据
这篇文章将为大家详细讲解有关springsecurity如何使用application/json接收数据,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
spring security 使用 application/json 接收数据
不了解 security 的请看 security 的简单使用
https://blog.51cto.com/5013162/2404946
在使用 spring security 登录用户的时候 发现使用 application/josn 后台不能获取到数据
看 UsernamePasswordAuthenticationFilter 源码发现
//获取密码 protected String obtainPassword(HttpServletRequest request) { return request.getParameter(passwordParameter); } //获取用户名 protected String obtainUsername(HttpServletRequest request) { return request.getParameter(usernameParameter); }
是直接从request 获取的 不是从 requestBody 中获取的
那我们就只需要重写这两个方法从 requestBody 中获取参数
重写 UsernamePasswordAuthenticationFilter 类
public class UserAuthenticationFilter extends UsernamePasswordAuthenticationFilter { private ThreadLocal
登录成功处理类
LoginSuccessHandler.class
@Componentpublic class LoginSuccessHandler implements AuthenticationSuccessHandler { @Override public void onAuthenticationSuccess(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Authentication authentication) throws IOException, ServletException { httpServletResponse.setContentType("application/json;charset=UTF-8"); httpServletResponse.getWriter().write(authentication.getName()); }}
用户校验处理类
@Componentpublic class UserDetailServiceImpl implements UserDetailsService { /** * 用户校验 * @param s * @return * @throws UsernameNotFoundException */ @Override public UserDetails loadUserByUsername(String s) throws UsernameNotFoundException { Collectioncollection = new ArrayList<>();//权限集合 String password = new BCryptPasswordEncoder().encode("123456"); User user = new User(s,password,collection); return user; }}
改造完成 支持 post application/json 同时也支持 post form-data/x-www-form-urlencoded
都可以获取到传入的参数
关于"springsecurity如何使用application/json接收数据"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
登录
用户
数据
参数
篇文章
保护
支持
时候
更多
页面
处理
不错
实用
成功
两个
内容
同时
后台
地址
密码
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
TS语音软件开发
hdfs主服务器名称
凉薄网络技术有限公司
小米官网退不出来提示服务器出错
当前全球数据库技术发展趋势
小学组网络安全竞赛试题
电子软件开发是什么
互联网核心数据库技术路线选型
中国知网的分类目录和书目数据库
sql 数据库日志查看
去类似美团网站做软件开发
企业网络安全准入控制系统哪家好
oracle数据库共享内存参数
上海 软件开发培训
翔港科技属于工业互联网吗
服务器远程管理卡查看
网络安全黑板主题
计算机网络技术大二学什么
ipv6 地址国家对应数据库
国外代理服务器购买
数据库中如何查询两个信息
软件开发涉及哪些人员
无人船网络安全
毕业设计软件开发选题
四川网络安全测评公司
汽车配套软件开发商
医疗数据库导入
学软件开发技术哪种好
如何让服务器更快
服务器公网映射端口软件