使用axios时遇到的Request Method: OPTIONS请求,会同时发送两次请求问题
新接手的一个项目中,发现一些接口在请求时,会自动发送一个
Request Method: OPTIONS
的请求,我查了一遍代码,不是代码中写明的。就上网搜了一下,网上给出的解释涉及到了两个关键词:
简单请求和复杂请求。
简单请求和复杂请求。
简单请求
满足下面两个条件的请求是简单请求:
- 请求方式是以下三种之一:
- HEAD
- GET
- POST
- HTTP的头信息不超出以下几种字段
- Accept
- Accept-Language
- Content-Language
- Last-Event-ID
- Content-Type
但是Content-Type的值,只限于三个值:
application/x-www-form-urlencoded、multipart/form-data、text/plain
复杂请求
非简单请求就是复杂请求。
复杂请求的CORS请求,会在正式通信之前,增加一次HTTP查询请求,称为“预检”请求(preflight)。预检请求为OPTIONS请求,用于向服务器请求权限信息。预检请求被成功响应后,才会发出真实请求,携带真实数据。
axios默认请求就是application/json,所以不需要自己加上头部(不需要在config中加headers),所以总是会发出options请求的,看看是不是配置的时候加了不必要的headers配置项。
另外,如果真的需要预检,后台也需要进行设置,允许options请求。
原文:https://www.jianshu.com/p/9e52ca6b8818
使用axios时遇到的Request Method: OPTIONS请求,会同时发送两次请求问题相关推荐
- axios请求发送两次请求_vue使用axios发送请求,都会发送两次请求
vue 使用axios,每次的请求都会发送两次,第一次的请求头为options CORS是一个W3C标准,全称是"跨域资源共享"(Cross-origin resource sha ...
- axios每次发送请求会有两次,多一次Request Method: OPTIONS是怎么回事?
现在vue项目中使用axios发送http请求,每次请求都会多一次Request Method: OPTIONS请求,然后才是get/post请求,请问这个是后台的问题还是我这边axios请求的问题? ...
- Request Method: OPTIONS
新接手的一个项目中,发现一些接口在请求时,会自动发送一个的请求,我查了一遍代码,不是代码中写明的.就上网搜了一下,网上给出的解释涉及到了两个关键词:简单请求和复杂请求. Request Method: ...
- 为什么浏览器请求一个接口有两次其中一次是Request Method: OPTIONS
Request Method: OPTIONS 刚接触前端的时候,以为HTTP的Request Method只有GET与POST两种,后来才了解到,原来还有HEAD.PUT.DELETE.OPTION ...
- Ajax 请求中出现OPTIONS(Request Method: OPTIONS)
背景 做上传文件功能时,在请求上传文件接口之前,会发送一个options的请求. 原因 ajax 请求遵循同源策略(协议.域名.端口必须一致),若突破该限制,会产生跨域行为,设置Access-Cont ...
- JAVA解决OPTIONS请求问题:跨域时ajax发送两次请求,其中options预请求参数为null及其解决方案
转载请注明出处 原文链接:https://blog.csdn.net/qq_39309348/article/details/103267908 在正式跨域的请求前,浏览器会根据需要,发起一个&quo ...
- 调试web项目时Chrome浏览器发送两次请求
最近调试web项目时,项目有时候会因为接收到空值而报错,之后我发现是因为Chrome浏览器会连续发送2次请求导致. 在使用Edge浏览器则没有出现这个问题,遂搜索了一些解决方案如下: https:// ...
- vue axios跨域 Request Method: OPTIONS问题
今天做跨域登录功能遇到这个问题(后端已做跨域处理): 当跨域请求为post时候,请求的method变为了options. 在这里插入图片描述 其实跨域分为 简单跨域请求和复杂跨域请求: 简单跨域请求是 ...
- axios发起请求,为什么先发送options请求,再发送get/post请求
引起原因 1,跨域: 2,请求头非默认情况. 默认请求头如下 Accept Accept-Language Content-Language Last-Event-ID Content-Type:只限 ...
最新文章
- 第二十二讲 延迟定理(补充)
- 海南工会云会员认证_好消息!海南农民工春节返乡最高有300元补贴!申请条件和流程→...
- innerText,outerText,innerHTML,outerHTML区别
- 基于哈夫曼编码完成的文件压缩及解压
- Nginx部署静态页面及引用图片有效访问的两种方式
- Exchange2010 owa 访问 http 500 内部服务器错误
- 【Pygame】屏幕图形绘制
- poj Shortest Prefixes ——trie树、字典树,基础!!
- dynamips常用命令
- 实时渲染和离线渲染的区别
- 机器学习与数据挖掘的区别(一点个人理解)
- 浅谈JavaScript面向对象编程(转自酷勤网)
- Excel如何快速筛选?
- 随机数字信号处理实验报告三——Levinson和Burg递推法MATLAB实现
- LED灯光照明控制协议(系统)- DALI
- 【云原生之k8s】kubeadm搭建k8s集群
- 《Dreamweaver CS6 完全自学教程》笔记 第十章:表单的使用
- JWPlayer Flash播放器如何实现视频分段载入播放从而节省带宽?
- 复习删除数组中的重复元素
- unknown filesystem解决方案