CROS(Cross-Origin Resource Sharing)是由W3C制定的一种跨域资源共享技术标准,其目的就是为了解决前端的跨域请求。
SpringBoot配置跨域有2种方式,一是方法注解配置,二是全局配置
-
注解配置
@RestController @RequestMapping("/cors") public class RestfulCorsController { @RequestMapping("/") @CrossOrigin(value = "http://localhost:5000",allowedHeaders = "*",maxAge = 1800) public Map<String,String> itemOperator(@RequestBody ModelMap params){ Map<String,String> map = new HashMap<>(); map.put("name", (String) params.get("name")); System.out.println(params); return map; } }
-
全局配置
@Configuration public class WebMvcConfig implements WebMvcConfigurer { /* * 配置全局跨域请求 * */ @Override public void addCorsMappings(CorsRegistry registry) { registry.addMapping("/cors/**"). allowedHeaders("*"). allowedMethods("*"). maxAge(1800). allowedOrigins("*"); registry.addMapping("/**"). allowedHeaders("*"). allowedMethods("*"). maxAge(1800). allowedOrigins("http://localhost:5000"); } }