第一次遇到这种错,以为是普通跨域,我用的是gateway路由用来调用各个服务的方法
后台接口可以接收到前台的请求,并且响应,但是前台收不到响应
路由那里进行了一次处理跨域请求
* 跨域解决办法之一:
* 过滤器,给所有请求增加请求头信息
* 使得预检请求通过
@Bean
public CorsWebFilter corsWebFilter() {
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
CorsConfiguration corsConfiguration = new CorsConfiguration();
// 1、配置跨域
corsConfiguration.addAllowedHeader("*");
corsConfiguration.addAllowedMethod("*");
corsConfiguration.addAllowedOrigin("*");
corsConfiguration.setAllowCredentials(true);// 否则跨域请求会丢失cookie信息
source.registerCorsConfiguration("/**", corsConfiguration);
return new CorsWebFilter(source);
}
但是学生服务里也进行了一次处理跨域请求
出现了这种问题就是出现了重复处理跨域请求,因为我用的gateway,所以把学生服务中的处理跨域请求的注解@CrossOrigin删掉就行了