fix: CORS跨域共享配置无效问题修复

This commit is contained in:
haoxr
2023-04-20 20:23:42 +08:00
parent df10b85157
commit 37055477e3

View File

@@ -1,5 +1,6 @@
package com.youlai.system.config; package com.youlai.system.config;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import org.springframework.web.cors.CorsConfiguration; import org.springframework.web.cors.CorsConfiguration;
@@ -9,16 +10,16 @@ import org.springframework.web.filter.CorsFilter;
import java.util.Collections; import java.util.Collections;
/** /**
* 开启CORS资源共享 * CORS资源共享配置
* *
* @author haoxr * @author haoxr
* @date 2022/10/24 * @date 2023/4/17
*/ */
@Configuration @Configuration
public class CorsConfig { public class CorsConfig {
@Bean @Bean
public CorsFilter corsFilter() { public FilterRegistrationBean filterRegistrationBean() {
CorsConfiguration corsConfiguration = new CorsConfiguration(); CorsConfiguration corsConfiguration = new CorsConfiguration();
//1.允许任何来源 //1.允许任何来源
corsConfiguration.setAllowedOriginPatterns(Collections.singletonList("*")); corsConfiguration.setAllowedOriginPatterns(Collections.singletonList("*"));
@@ -31,7 +32,11 @@ public class CorsConfig {
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(); UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
source.registerCorsConfiguration("/**", corsConfiguration); source.registerCorsConfiguration("/**", corsConfiguration);
return new CorsFilter(source); CorsFilter corsFilter = new CorsFilter(source);
}
FilterRegistrationBean<CorsFilter> filterRegistrationBean=new FilterRegistrationBean<>(corsFilter);
filterRegistrationBean.setOrder(-101); // 小于 SpringSecurity Filter的 Order(-100) 即可
return filterRegistrationBean;
}
} }