跨域需要后端需要设置响应的跨域头

如下

public void addCorsMappings(CorsRegistry registry) {

    registry.addMapping("/**")
.allowedOrigins("*")
.allowedMethods("POST", "GET", "PUT", "OPTIONS", "DELETE")
.allowCredentials(true)
.allowedHeaders("*")
.maxAge(3600);
}

同时项目需要验证request的header中附带的token验证信息,增加token验证拦截器

此时跨域头设置会失效,原因是 当请求到来时会先进入拦截器中,而不是进入Mapping映射中,所以返回的头信息中并没有配置的跨域信息。

浏览器遇到跨域请求会先发送options请求,而options请求是不会携带自定义头的(比如token),此时请求先进入token拦截器,验证失败并返回响应,绕过了Mapping映射,跨域失败。浏览器后续的请求不会发送。

最新文章

  1. 1250 Super Fast Fourier Transform(湘潭邀请赛 暴力 思维)
  2. tyvj1294 小v的舞会
  3. Android N preview 试用
  4. Linux下安装php加速软件Xcache
  5. easyui datagrid加载json
  6. 基于javascript实现图片懒加载(亲测有效)
  7. HDU 1171 Big Event in HDU --暴力+生成函数
  8. Hadoop:使用Mrjob框架编写MapReduce
  9. talos项目记录
  10. Oracle中字段的修改操作语法
  11. hdu4491 Windmill Animation(计算几何)
  12. EFcore与动态模型(三)
  13. 实时语音视频技术webrtc的编译总结
  14. Ubuntu下Java开发环境搭建(eclipse)
  15. 关于使用Log4Net将日志插入oracle数据库中
  16. Eclipse 项目以非gradle方式导入Android Studio
  17. android笔试题二
  18. (C/C++学习笔记) 六. 表达式
  19. Redis Linux版安装详解
  20. C# mysql 连接Apache Doris

热门文章

  1. 3D离线地图开发
  2. nginx1.1 nginx介绍和反向代理
  3. 使用VLL技术实现多家合作伙伴复用同一条链路做两端数据全透传
  4. MPLS L3 跨域 optionB 配置
  5. 【freertos】008-内存管理
  6. 每天一个 HTTP 状态码 102
  7. C#与SQL Server连接时,如何编写连接字符串?
  8. Linux Cgroup v1(中文翻译)(1):Control Group
  9. 48. ResNet为什么能训练出1000层的模型
  10. EnvironmentLocationNotFound: Not a conda environment: C:\Program Files\Anaconda3