前后端分离后,解决跨域问题

    xiaoxiao2022-07-05  191

    转载:https://blog.csdn.net/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()... } }

     

    最新回复(0)