创建WebMvcConfig类继承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 WebMvcConfig extends WebMvcConfigurerAdapter{
@Autowired
private InterceptorConfig interceptorConfig;
/**配置拦截器 */
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(interceptorConfig).addPathPatterns("/**");
}
@Override
//解决跨域问题
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowedOrigins("*")
.allowedMethods("POST", "GET", "PUT", "OPTIONS", "DELETE")
.allowedHeaders("authorization","Accept","Content-Type")
.maxAge(3600)
.allowCredentials(true);
}
}
在controller类上加上注解
@CrossOrigin({"http://localhost:8080","null"})
让整个类的方法成为可跨域访问的方法