1. SpringBoot项目直接在Controler层打上 @CrossOrigin 标签
2. 配置一个Configuration类:
package com.qxkj.dataaccess.filter;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
import org.springframework.web.filter.CorsFilter;
/**
* @ProjectName: data-access
* @PackageName: com.qxkj.dataaccess.filter
* @Author: mikuneko
* @CreateTime: 2023-05-05 09:39
* @Description: 跨域问题解决
* @Version: 1.0
*/
@Configuration
public class CrossFilter {
private CorsConfiguration buildConfig() {
CorsConfiguration corsConfiguration = new CorsConfiguration();
corsConfiguration.addAllowedOrigin("*"); // 1允许任何域名使用
corsConfiguration.addAllowedHeader("*"); // 2允许任何头
corsConfiguration.addAllowedMethod("*"); // 3允许任何方法(post、get等)
return corsConfiguration;
}
@Bean
public CorsFilter corsFilter() {
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
source.registerCorsConfiguration("/**", buildConfig()); // 4
return new CorsFilter(source);
}
}