方法一:跨域注解 : @CrossOrigin
前置条件:JDK1.8+
加在controller控制类上方即可
方法二:过滤器,提取到公共模块,统一控制,需要引入公共模块的包
@Configuration
public class GlobalCorsConfig {
/**
* 允许跨域调用过滤器
* @return
*/
@Bean
public CorsFilter corsFilter(){
CorsConfiguration corsConfiguration = new CorsConfiguration();
//放行全部原始头信息
corsConfiguration.addAllowedHeader("*");
//允许白名单域名进行跨域调用
corsConfiguration.addAllowedOrigin("*");
//允许跨域发送cookie
corsConfiguration.addAllowedOriginPattern("*");
//允许所有请求方法跨域调用
corsConfiguration.addAllowedMethod("*");
UrlBasedCorsConfigurationSource corsConfigurationSource = new UrlBasedCorsConfigurationSource();
corsConfigurationSource.registerCorsConfiguration("/**",corsConfiguration);
CorsFilter corsFilter = new CorsFilter(corsConfigurationSource);
return corsFilter;
}
}