数码资讯
SpringSecurity的 loginProcessingUrl为什么不能用
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
前情提要:
我在做一个springsecurity动态鉴权的项目时,
据网上说配置了
loginProcessingUrl("/login1");
以后 就可以自定义login的请求路径
于是我配了,不行!!我请求login1,被当成普通的请求而不是登录的请求,走了token验证的那一条过滤器
于是我问了师傅,两个人看源码看了一个小时
发现是因为我重写了UsernamePasswordAuthenticationFilter类
的原因
我们先来看一下 为什么正常情况下 loginProcessingUrl是可以自定义登录请求url路径的呢
来看security自带的类
来看里面的loginProceessingUrl方法
意思就是 你传入自定义登录url,他帮你设置到this.authFilter的匹配路径里面
根本原因来了 这个this.authFilter根本就没有提供一个set方法,也就是说 我自己写的Filter跟这里的authFilter是两个类
校验用的是我的UsernamePasswordAuthenticationFilter
设置url设置的是自带的这个filter,不是我的filter!!
也就是说 这个设置了url设置了个寂寞 根本没用到
怎么解决?
这样配即可!
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。