現(xiàn)代瀏覽器出于安全的考慮,在 http/https 請(qǐng)求時(shí)必須遵守同源策略,否則即使跨域的 http/https 請(qǐng)求,默認(rèn)情況下是被禁止的,ip(域名)不同、或者端口不同、協(xié)議不同(比如 http、https)都會(huì)造成跨域問題。下面介紹一個(gè) Spring Boot 中采用注解輕松實(shí)現(xiàn)跨域的一個(gè)基礎(chǔ)例子。
創(chuàng)建 config 包,放入一個(gè)配置類

WebMvcConfigurer 配置類
@Configuration
public class WebMvcConfigurer extends WebMvcConfigurerAdapter {
//跨域配置
@Bean
public WebMvcConfigurer corsConfigurer() {
return new WebMvcConfigurer() {
@Override
//重寫父類提供的跨域請(qǐng)求處理的接口
public void addCorsMappings(CorsRegistry registry) {
//添加映射路徑
registry.addMapping("/**")
//放行哪些原始域
.allowedOrigins("*")
//是否發(fā)送Cookie信息
.allowCredentials(true)
//放行哪些原始域(請(qǐng)求方式)
.allowedMethods("GET", "POST", "PUT", "DELETE")
//放行哪些原始域(頭部信息)
.allowedHeaders("*")
//暴露哪些頭部信息(因?yàn)榭缬蛟L問默認(rèn)不能獲取全部頭部信息)
.exposedHeaders("Header1", "Header2");
}
};
}
}
然后前端就可以進(jìn)行跨域訪問了