今天在整合前端同学的项目时出现了跨域错误
has been blocked by CORS policy: Response to preflight request doesn‘t pass access control check 报错
解决办法
服务端配置一个跨域类CorsConfig,需要把
.allowedOrigins("")改成
.allowedOriginPatterns("")// 允许所有域名
package com.economy.back.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
/**
* 跨域配置类
*/
@Configuration
public class CorsConfig {
@Bean
public WebMvcConfigurer corsConfigurer() {
return new WebMvcConfigurer() {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")// 对所有请求路径
// .allowedOrigins("*")// 允许所有域名
.allowedOriginPatterns("*")// 允许所有域名
.allowCredentials(true)// 允许cookie等凭证
.allowedMethods("GET", "POST", "DELETE", "PUT", "PATCH")// 允许所有方法
.maxAge(3600);
}
};
}
}