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); } }
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。