一.直接在相应的请求方法上加注解
@RestController
public class BookController {
@PostMapping("/add/book")
@CrossOrigin(value = "http://localhost:8084",maxAge = 1600,allowedHeaaders = "*")
public Object addBook(){
return "book";
}
}
CrossOrigin中的value表示支持的域,表示来自某个域的请求时支持跨域的。
maxAge表示请求的有效期。
allowedHeaaders表示允许的请求头,“*” 表示所有的请求头都被允许跨域。
二.通过配置类的方式解决
创建MvcConfigurer类,实现WebMvcConfigurer接口中的addCorsMappings方法
@Configuration
public class MvcConfigurer implements WebMvcConfigurer {
/**
* 配置跨域*
* @param registry*
*/*
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowedHeaders("*")
.allowedMethods("*")
.maxAge(1800)
.allowedOrigins("http://springboot3.com");
}
}
addMapping 表示对哪种路径的请求进行跨域配置
allowedHeaders 表示允许的请求头,默认允许全部
maxAge 表示请求的有效期
allowedOrigins 表示支持的域名
网友评论