Spring Boot中如何处理跨域问题呢?
下文笔者讲述SpringBoot中处理跨域问题的方法分享,如下所示
SpringBoot跨域简介
跨域简介SpringBoot解决跨域问题的方法
SpringBoot中解决跨域,可使用以下方法:
实现WebMvcConfigurer接口然后重写addCorsMappings方法
例:
@Configuration
public class CorsConfig implements WebMvcConfigurer {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowedOrigins("*")
.allowCredentials(true)
.allowedMethods("GET", "POST", "PUT", "DELETE", "OPTIONS")
.maxAge(3600);
}
}
注意事项:
我们还需定义一个filter
因为在一些有权限验证的地方
http请求---会先进入filter---然后再达到servlet进行拦截
所以我们还需将cors放入到filter,使其优先于权限拦截器
@Configuration
public class CorsConfig {
@Bean
public CorsFilter corsFilter() {
CorsConfiguration corsConfiguration = new CorsConfiguration();
corsConfiguration.addAllowedOrigin("*");
corsConfiguration.addAllowedHeader("*");
corsConfiguration.addAllowedMethod("*");
corsConfiguration.setAllowCredentials(true);
UrlBasedCorsConfigurationSource urlBasedCorsConfigurationSource = new UrlBasedCorsConfigurationSource();
urlBasedCorsConfigurationSource.registerCorsConfiguration("/**", corsConfiguration);
return new CorsFilter(urlBasedCorsConfigurationSource);
}
}
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


