springboot解决跨域问题
什么是跨域:
跨域是指 不同域名之间相互访问。跨域,指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对JavaScript施加的安全限制
如果 协议,域名,端口有一个不同都会出现跨域
springboot解决跨域问题,很方便快捷,用Spring Boot 配置 CORS,添加 Filter 的方式,配置 CORS 规则,代码如下
@Configuration
public class CorsConfig {
private CorsConfiguration buildConfig() {
CorsConfiguration corsConfiguration = new CorsConfiguration();
//添加白名单
corsConfiguration.setAllowedOrigins(Env.allowedOriginsHost);
corsConfiguration.addAllowedOrigin("*");
corsConfiguration.addAllowedHeader("*");
corsConfiguration.addAllowedMethod("*");
corsConfiguration.setAllowCredentials(true);
return corsConfiguration;
}
@Bean
public CorsFilter corsFilter() {
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
source.registerCorsConfiguration("/**", buildConfig());
return new CorsFilter(source);
}
}
这样就可以解决跨域问题