之前搭建了一个SpringBoot项目用于测试集成Redis和MyBatis以及Freemarker,搭建完成测通之后就没有再打开过。今天打开之后想要测试一个问题,发现在这个项目下无论请求哪个接口,浏览器都会跳转到一个登录页面,而且这个页面不是我写的,如下图:
地址栏里的login也是在我输入了自己的接口之后,自动跳转到了login
于是用Postman测试,得到401响应:
当时一脸蒙蔽,心想我代码里面没有写拦截器啊,而且拦截之后的页面也不是我写的。刚开始认为可能和端口有关,后来发现不是。于是想着很有可能是SpringBoot自己默认的拦截。网上找了各种资料,果然,发现项目的pom.xml中多了spring-boot-starter-security的jar包,去掉这个jar包就好了。
后来,为了确定一下是不是这个jar包的影响,我在另一个SpringBoot的pom中加入了这个jar,果然这个问题复现了。
关于spring-boot-starter-secruity的内容,我们后面详细讨论。