SpringBoot使用CORS的addCorsMappings中会遇到的问题
2024-09-01 23:53:52
跨域需要后端需要设置响应的跨域头
如下
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映射,跨域失败。浏览器后续的请求不会发送。
最新文章
- 1250 Super Fast Fourier Transform(湘潭邀请赛 暴力 思维)
- tyvj1294 小v的舞会
- Android N preview 试用
- Linux下安装php加速软件Xcache
- easyui datagrid加载json
- 基于javascript实现图片懒加载(亲测有效)
- HDU 1171 Big Event in HDU --暴力+生成函数
- Hadoop:使用Mrjob框架编写MapReduce
- talos项目记录
- Oracle中字段的修改操作语法
- hdu4491 Windmill Animation(计算几何)
- EFcore与动态模型(三)
- 实时语音视频技术webrtc的编译总结
- Ubuntu下Java开发环境搭建(eclipse)
- 关于使用Log4Net将日志插入oracle数据库中
- Eclipse 项目以非gradle方式导入Android Studio
- android笔试题二
- (C/C++学习笔记) 六. 表达式
- Redis Linux版安装详解
- C# mysql 连接Apache Doris
热门文章
- 3D离线地图开发
- nginx1.1 nginx介绍和反向代理
- 使用VLL技术实现多家合作伙伴复用同一条链路做两端数据全透传
- MPLS L3 跨域 optionB 配置
- 【freertos】008-内存管理
- 每天一个 HTTP 状态码 102
- C#与SQL Server连接时,如何编写连接字符串?
- Linux Cgroup v1(中文翻译)(1):Control Group
- 48. ResNet为什么能训练出1000层的模型
- EnvironmentLocationNotFound: Not a conda environment: C:\Program Files\Anaconda3