解决跨域配置问题:When allowCredentials is true, allowedOrigins cannot contain the special value
1、问题描述SpringBoot配置跨域时出现:java.lang.IllegalArgumentException: When allowCredentials is true, allowedOrigins cannot contain the special value "*"since that cannot be set on the "Access-Control-Allow-Orig
·
1、问题描述
SpringBoot配置跨域时出现:
java.lang.IllegalArgumentException: When allowCredentials is true, allowedOrigins cannot contain the special value "*"since that cannot be set on the "Access-Control-Allow-Origin" response header. To allow credentials to a set of origins, list them explicitly or consider using "allowedOriginPatterns" instead.
2、问题原因
SpringBoot升级2.4.0之后,跨域配置中的.allowedOrigins不再可用
3、解决办法
将配置中的.allowedOrigins替换成.allowedOriginPatterns即可。
SpringBoot2.0.0中
@Configuration
public class CorsConfig implements WebMvcConfigurer {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**").allowedOrigins("*")
.allowedMethods("GET", "HEAD", "POST","PUT", "DELETE", "OPTIONS")
.allowCredentials(true).maxAge(3600);
}
}
SpringBoot2.4.0中
@Configuration
public class CorsConfig implements WebMvcConfigurer {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**").allowedOriginPatterns("*")
.allowedMethods("GET", "HEAD", "POST","PUT", "DELETE", "OPTIONS")
.allowCredentials(true).maxAge(3600);
}
}
更多推荐
所有评论(0)