浅谈在fetch方法中添加header后遇到的预检请求问题


Posted in Javascript onAugust 31, 2017

今天在使用fetch方法

fetch('xxx.com',{header:{bbbbbbb:111}})

浏览器返回的请求信息中,header变成了

:authority:koss.nocorp.me
:method:OPTIONS
:path:/?a=1
:scheme:https
accept:*/*
accept-encoding:gzip, deflate, br
accept-language:zh-CN,zh;q=0.8
access-control-request-headers:bbbbbbbbbbb
access-control-request-method:GET
origin:http://localhost:3333
referer:http://localhost:3333/
user-agent:Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36

而该次请求的Request Method也变成了OPTION,不论是生成的奇怪请求头,还是OPTION方法,都是没有遇见过的。

这次请求与平时开发中发送的请求有以下几点不同

1.该次请求对象网站是跨域地址

2.本次请求添加的请求头服务端不会获取

遂根据浏览器返回的请求信息字段名进行查询,查询得知

access-control-request-headers:bbbbbbbbbbb
access-control-request-method:GET

名为预检头,是CORS请求中用于向服务端发送请求时获取准许的一个步骤。服务端的回应主要在Response 中的Access-Control-Allow-Origin字段体现。

具体相关信息可以查阅MDN:https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Access_control_CORS

以上这篇浅谈在fetch方法中添加header后遇到的预检请求问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery 得到当前页面高度和宽度的两个函数
Feb 21 Javascript
JavaScript splice()方法详解
Sep 22 Javascript
js读取cookie方法总结
Oct 31 Javascript
浅谈javascript运算符——条件,逗号,赋值,()和void运算符
Jul 15 Javascript
Bootstrap风格的zTree右键菜单
Feb 17 Javascript
从零学习node.js之文件操作(三)
Feb 21 Javascript
react性能优化达到最大化的方法 immutable.js使用的必要性
Mar 09 Javascript
jQuery实现滚动效果
Nov 17 jQuery
jQuery中each遍历的三种方法实例分析
Sep 07 jQuery
js中Array对象的常用遍历方法详解
Jan 17 Javascript
解决微信小程序中转换时间格式IOS不兼容的问题
Feb 15 Javascript
vue+vant实现商品列表批量倒计时功能
Jan 13 Javascript
浅谈vue的踩坑路
Aug 31 #Javascript
对存在JavaScript隐式类型转换的四种情况的总结(必看篇)
Aug 31 #Javascript
[js高手之路]HTML标签解释成DOM节点的实现方法
Aug 31 #Javascript
基于JSON数据格式详解
Aug 31 #Javascript
浅谈js中的this问题
Aug 31 #Javascript
js实现图片放大展示效果
Aug 30 #Javascript
详解js几个绕不开的事件兼容写法
Aug 30 #Javascript
You might like
全国中波电台频率表
2020/03/11 无线电
laravel 5 实现模板主题功能
2015/03/02 PHP
分享PHP守护进程类
2015/12/30 PHP
java模拟PHP的pack和unpack类
2016/04/13 PHP
PHP实现QQ、微信和支付宝三合一收款码实例代码
2018/02/19 PHP
利用window.name实现windowStorage代码分享
2014/01/02 Javascript
按Enter键触发事件的jquery方法实现代码
2014/02/17 Javascript
jquery attr方法获取input的checked属性问题
2014/05/26 Javascript
jQuery中scrollTop()方法用法实例
2015/01/16 Javascript
JavaScript中数据结构与算法(三):链表
2015/06/19 Javascript
基于JS实现PHP的sprintf函数实例
2015/11/14 Javascript
JS设置下拉列表框当前所选值的方法
2015/12/22 Javascript
JavaScript实现简单的拖动效果
2016/07/02 Javascript
js正则表达式注册页面表单验证
2016/10/11 Javascript
jQuery展示表格点击变色、全选、删除
2017/01/05 Javascript
AngularJS路由切换实现方法分析
2017/03/17 Javascript
微信小程序后台解密用户数据实例详解
2017/06/28 Javascript
详解Vue前端对axios的封装和使用
2019/04/01 Javascript
简述ES6新增关键字let与var的区别
2019/08/23 Javascript
js仿淘宝放大镜效果
2020/12/28 Javascript
基于python解线性矩阵方程(numpy中的matrix类)
2019/10/21 Python
详细分析Python垃圾回收机制
2020/07/01 Python
python Selenium 库的使用技巧
2020/10/16 Python
html5中svg canvas和图片之间相互转化思路代码
2014/01/24 HTML / CSS
俄罗斯金苹果网上化妆品和香水商店:Goldapple
2019/12/01 全球购物
美国眼镜在线零售商:Dualens
2019/12/07 全球购物
实习鉴定评语
2014/01/19 职场文书
入股协议书
2014/04/14 职场文书
慰问敬老院活动总结
2014/04/26 职场文书
新文化运动的基本口号
2014/06/21 职场文书
2014法制宣传日活动总结
2014/07/09 职场文书
婚礼新人答谢词
2015/01/04 职场文书
公司财务经理岗位职责
2015/04/08 职场文书
2019公司借款合同范本2篇!
2019/07/24 职场文书
spring注解 @PropertySource配置数据源全流程
2022/03/25 Java/Android
TypeScript 内置高级类型编程示例
2022/09/23 Javascript