在Spring Boot中重新定义现有过滤器时,现有过滤器会被新定义的过滤器替换吗?
例如,如果我这样重新定义CorsFilter.class:
@Configuration
public class CorsConfig {
@Bean
public CorsFilter corsFilter() {
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
CorsConfiguration corsConfiguration = new CorsConfiguration();
corsConfiguration.setAllowCredentials(true);
corsConfiguration.addAllowedOrigin("http://localhost:8080");
corsConfiguration.addAllowedMethod("*");
corsConfiguration.addAllowedHeader("*");
source.registerCorsConfiguration("/api/**", corsConfiguration);
return new CorsFilter(source);
}
}
不再使用org.springframework.web.filter.CorsFilter吗?
答案 0 :(得分:0)
不再使用org.springframework.web.filter.CorsFilter吗?
我认为它仍在使用,您可以有多个过滤器。
要禁用过滤器,您可以使用FilterRegistrationBean
(将要禁用的任何Filter
类作为参数传递)
@Bean
public FilterRegistrationBean filterRegistrationBean(CorsFilter corsFilter) {
FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean(corsFilter);
filterRegistrationBean.setEnabled(false);
return filterRegistrationBean;
}