//--------------第一步
//spring 5版本全局配置方式
@Configuration
@EnableWebMvc
public class SpringMvcBeans implements WebMvcConfigurer{
@Override
public void addCorsMappings(CorsRegistry registry) {
if(!AppWebConf.isPro()) {
registry.addMapping("/**");
}
WebMvcConfigurer.super.addCorsMappings(registry);
}
}
//spring 4版本全局配置方式
@Configuration
@EnableWebMvc
public class SpringMvcBeans extends WebMvcConfigurerAdapter{
@Override
public void addCorsMappings(CorsRegistry registry) {
//非正式环境支持跨域,适用于前后端分离开发阶段
if(!AppWebConf.isPro()) {
registry.addMapping("/**");
}
WebMvcConfigurer.super.addCorsMappings(registry);
}
//或者指定的url
//registry.addMapping("/api/**")
// .allowedOrigins("http://domain2.com")
// .allowedMethods("PUT", "DELETE")
// .allowedHeaders("header1", "header2", "header3")
// .exposedHeaders("header1", "header2")
// .allowCredentials(false).maxAge(3600);
}
//---------------------第二步
//还需要自己在一个过滤器中写入这个代码,不然还是会浏览器抛出跨域异常
//如果是不是正式环境
if(!AppWebConf.isPro()) {
response.setHeader("Access-Control-Allow-Origin", "*");
}