浏览器出于安全的考虑,使用XMLHttpRequests对象发起HTTP请求时必须遵守同源策略,否则就是跨域的HTTP请求,默认情况下是被禁止的。
同源策略要求源相同才能正常进行通信,即协议、域名、端口号都完全一致
前后端分离项目,前端项目和后端项目一般不都是同源的,所以肯定会存在跨域请求的问题
所以我们就要处理一下,运行跨域请求
1.在Springboot中配置跨域
@Configuration
public class CorsConfig implements WebMvcConfigurer {
@Override
public void addCorsMappings(CorsRegistry registry) {
// 设置允许跨域的路径
registry.addMapping("/**")
// 设置允许跨域请求的域名
.allowedOriginPatterns("*")
// 是否允许cookie
.allowCredentials(true)
// 设置允许的方法
.allowedMethods("*")
// 跨域允许时间
.maxAge(3600)
// 跨域允许请求头
.allowedHeaders("*");
}
}
2.在SpringSecurity中配置
@Override
protected void configure(HttpSecurity http) throws Exception {
... 省略其它配置
// 允许跨域了
http.cors();
}