您的位置:首页 > 教程文章 > 编程开发

多模块项目引入SpringSecurity后一直报404的解决方案

:0 :2021-10-15 13:40:53

多模块项目引入SpringSecurity后报404
所示,在多模块应用中,1引用2后所有访问路径报错404
在确保security配置正确的情况下,检查一下1的启动类(主动引入security的那个模块)
这种写法是错误的,虽然扫描到了security模块下的组件,但是会覆盖原本自己模块下的组件。
正确的做法如下:
SpringSecurity404需要注意的地方
在使用@RequestMapping的时候路径的值如果写为("auth"),虽然用的时候前面加不加"/"没有区别,但是在配置了SpringSecurity的http.authorizeRequests().antMatchers()时就必须要注意了!
1-->
@RequestMapping("auth")与.antMatchers("auth")请求路径  与 / 都映射不到你指定的antMatchers("auth")上,而是给了.anyRequest().authenticated()处理.
2-->
@RequestMapping("auth")与.antMatchers("/auth")请求路径  是正常对应的 / 交给了.anyRequest().authenticated()处理.
3-->
@RequestMapping("/auth")与.antMatchers("auth")同1
4-->
@RequestMapping("/auth")与.antMatchers("/auth")同2
结论
使用.antMatchers("/auth")和@RequestMapping("/auth"),为什么呢? 这就是我写这篇文章的原因.
2之前是能用的但是偏偏今天就404了,我就对比都试了下.试完4后2能用了,我还是不太相信2所以推荐大家使用4.
可能你们的使用2丝毫没有问题。以上为个人经验,希望能给大家一个参考,也希望大家多多支持无名。

hadoop运行java程序(jar包)并运行时动态指定参数
解析Java实现设计模式六大原则之里氏替换原则

同类资源