赞
踩
今天使用spring-boot做了热重载以后出现了一个问题,我无论访问那个接口都会导致接口被重定向到下面这个界面 地址是 :“localhost:/login”
如果您在Spring Boot项目中使用了Spring Security进行身份验证,并且未进行正确的配置,则可能会出现重定向到"/login"路径的问题。这通常是因为Spring Security默认情况下将未经身份验证的请求重定向到"/login"路径。要解决这个问题,您可以在您的Spring Security配置中添加以下代码:
http
.authorizeRequests()
.antMatchers("/login").permitAll()
.anyRequest().authenticated()
.and()
.formLogin()
.loginPage("/custom-login-page")
.permitAll();
其中,"/login"是默认的登录页面路径,您可以将其替换为您自己的登录页面路径。另外,如果您想要禁用重定向,您可以在配置中添加以下代码:
http
.authorizeRequests()
.antMatchers("/login").permitAll()
.anyRequest().authenticated()
.and()
.formLogin()
.loginPage("/custom-login-page")
.permitAll()
.successHandler((request, response, authentication) -> {})
.failureHandler((request, response, exception) -> {});
这将使用空的成功和失败处理程序来禁用重定向。
比如:
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-config</artifactId>
<version>5.5.0</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-web</artifactId>
<version>5.5.0</version>
</dependency>
@SpringBootApplication(exclude = {SecurityAutoConfiguration.class})
@SpringBootApplication(exclude = {SecurityAutoConfiguration.class})
public class XXApplication {
public static void main(String[] args) {
SpringApplication.run(XXApplication.class, args);
}
}
添加完毕后重启一下程序,就可以了,因为之前没遇到过,因此记录一下。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。