spring - 在 Springboot 中重新定义现有过滤器时是否会被替换?
问题描述
在 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 不再使用了吗?
解决方案
org.springframework.web.filter.CorsFilter 不再使用了吗?
我认为它仍在使用,您可以有多个过滤器。
要禁用过滤器,您可以使用FilterRegistrationBean
(作为参数传递Filter
您要禁用的任何类)
@Bean
public FilterRegistrationBean filterRegistrationBean(CorsFilter corsFilter) {
FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean(corsFilter);
filterRegistrationBean.setEnabled(false);
return filterRegistrationBean;
}
推荐阅读
- javascript - 从数组中取出随机字符串,将其放入新数组中,然后再将其放回旧数组中
- c - 我分配了一个长变量,但错误消息声称它是一个 int
- vba - 导入和导出表单域
- javascript - 对设置状态进行反应回调
- java - 反转 JTable 中行和列的功能
- azure - 想要将传入请求更改为身份或 openIDConnect
- amazon-web-services - 有没有办法在 EFS 上记录读/写事件?
- ios - SwiftUI NavigationView 与 List 内 ForEach 中的 NavigationLink 来回跳转
- go - 在Go中,当您将其名称作为字符串时,如何获取枚举(const iota int)值
- python-3.x - 如何从 Python 与 AutoCAD 交互?