后端解决跨域问题,在Controller接口上加上@CrossOrigin注解就可以,该注解可以加在类上,也可以加在方法上,一般的请求处理数据都没有问题,但是如果上传文件就会报跨域的错误。
解决这个文件上传跨域的问题,就需要增加一个过滤器配置。
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
import org.springframework.web.filter.CorsFilter;
/**
* 跨域过滤器
* @return
*/
@Bean
public CorsFilter corsFilter() {
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
CorsConfiguration corsConfiguration = new CorsConfiguration();
corsConfiguration.addAllowedOrigin("*");
corsConfiguration.addAllowedHeader("*");
corsConfiguration.addAllowedMethod("*");
//这句不加不能跨域上传文件,
corsConfiguration.setAllowCredentials(true);
source.registerCorsConfiguration("/**", corsConfiguration);
return new CorsFilter(source);
}