- 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;
- /**
- * 处理跨域请求的过滤器
- */
- @Configuration
- public class GlobalCorsConfig {
- @Bean
- public CorsFilter corsFilter() {
- //1. 添加 CORS 配置信息
- CorsConfiguration config = new CorsConfiguration();
- //1) 允许的域, 不要写 *, 否则 cookie 就无法使用了
- /*config.addAllowedOrigin("http://manage.farming.com");
- config.addAllowedOrigin("http://www.farming.com");*/config.addAllowedOrigin("*");
- //2) 是否发送 Cookie 信息
- config.setAllowCredentials(true);
- //3) 允许的请求方式
- config.addAllowedMethod("OPTIONS");
- config.addAllowedMethod("HEAD");
- config.addAllowedMethod("GET");
- config.addAllowedMethod("PUT");
- config.addAllowedMethod("POST");
- config.addAllowedMethod("DELETE");
- config.addAllowedMethod("PATCH");
- // 4) 允许的头信息
- config.addAllowedHeader("*");
- //2. 添加映射路径, 我们拦截一切请求
- UrlBasedCorsConfigurationSource configSource = new UrlBasedCorsConfigurationSource();
- configSource.registerCorsConfiguration("/**", config);
- //3. 返回新的 CorsFilter.
- return new CorsFilter(configSource);
- }
- }
来源: http://www.bubuko.com/infodetail-3201720.html