1、问题描述
在之前的文章《xxx has been blocked by CORS policy;跨域资源共享策略》中介绍过如何在Java后台程序中修改头部信息来解决跨域问题,不过当时的方法是在每个接口中都进行了相关的配置,作为开发者的我们怎么能容忍这种重复工作呢,况且Spring中也提供了相关类来解决这中问题。今天就来通过一个新增一个类来解决跨域问题。
2、解决过程
可以在程序中添加一个配置类,该类需要实现WebMvcConfigurerAdapter类,并重写addCorsMappings方法,具体实现如下:
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
@Configuration
public class WebCorsConfig extends WebMvcConfigurerAdapter {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowedOrigins("*")
.allowedMethods("GET","POST","DELETE")
.allowedHeaders("*")
.exposedHeaders("Access-Control-Allow-Origin")
.allowCredentials(true);
}
}
问题解决。