转载:https://blog.youkuaiyun.com/zhaokejin521/article/details/81007884
1.重写WebMvcConfigurer(全局跨域)
在任意配置类,返回一个新的WebMvcConfigurer Bean,并重写其提供的跨域请求处理的接口,目的是添加映射路径和具体的CORS配置信息。
@Configuration
public class GlobalCorsConfig {
@Bean
public WebMvcConfigurer corsConfigurer() {
return new WebMvcConfigurer() {
@Override
//重写父类提供的跨域请求处理的接口
public void addCorsMappings(CorsRegistry registry) {
//添加映射路径
registry.addMapping("/**")
//放行哪些原始域
.allowedOrigins("*")
//是否发送Cookie信息
.allowCredentials(true)
//放行哪些原始域(请求方式)
.allowedMethods("GET","POST", "PUT", "DELETE")
//放行哪些原始域(头部信息)
.allowedHeaders("*")
//暴露哪些头部信息(因为跨域访问默认不能获取全部头部信息)
.exposedHeaders("Header1", "Header2");
}
};
}
}
注意:
如果使用了Spring Security,请确保在Spring Security已经启用CORS
@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http.cors().and()...
}
}

博客介绍了重写WebMvcConfigurer实现全局跨域的方法,即在任意配置类返回新的WebMvcConfigurer Bean,重写跨域请求处理接口,添加映射路径和CORS配置信息。同时提醒若使用Spring Security,要确保其已启用CORS。
7618

被折叠的 条评论
为什么被折叠?



