SpringBoot的Cros跨域问题经常始终不能解决跨域的原因
Posted 阿呆攻防
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot的Cros跨域问题经常始终不能解决跨域的原因相关的知识,希望对你有一定的参考价值。
SpringBoot的Cros跨域问题经常始终不能解决跨域的原因
问题
在配置跨域的@Configuration的时候,发现无论是.allowedOrigns()还是.allowedOriginParrtens()都解决不了的时候请看。
问题的根本原因
SpringBoot配置的版本问题
配置方法
SpringBoot 2.2.X版本
@Configuration
public class CrosConfig extends WebMvcConfigurationSupport
@Override
protected void addCorsMappings(CorsRegistry registry)
super.addCorsMappings(registry);
registry.addMapping("/**")
.allowedMethods("*")
.allowedOrigins("*")
.allowedHeaders("*");
SpringBoot 2.5.X版本
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
import org.springframework.web.filter.CorsFilter;
import java.util.Collections;
@Configuration
public class CrosConfig
@Bean
public CorsFilter corsFilter()
CorsConfiguration corsConfiguration = new CorsConfiguration();
//1,允许任何来源
corsConfiguration.setAllowedOriginPatterns(Collections.singletonList("*"));
//2,允许任何请求头
corsConfiguration.addAllowedHeader(CorsConfiguration.ALL);
//3,允许任何方法
corsConfiguration.addAllowedMethod(CorsConfiguration.ALL);
//4,允许凭证
corsConfiguration.setAllowCredentials(true);
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
source.registerCorsConfiguration("/**", corsConfiguration);
return new CorsFilter(source);
以上是关于SpringBoot的Cros跨域问题经常始终不能解决跨域的原因的主要内容,如果未能解决你的问题,请参考以下文章
SpringBoot的Cros跨域问题经常始终不能解决跨域的原因
SpringBoot的Cros跨域问题经常始终不能解决跨域的原因