浅谈在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 相关文章推荐
use jscript with List Proxy Server Information
Jun 11 Javascript
js全选实现和判断是否有复选框选中的方法
Feb 17 Javascript
原生JS实现拖拽图片效果
Aug 27 Javascript
jquery使用Cookie和JSON记录用户最近浏览历史
Apr 19 Javascript
jQuery页面加载初始化的3种方法(推荐)
Jun 02 Javascript
如何解决IONIC页面底部被遮住无法向上滚动问题
Sep 06 Javascript
jQuery+正则+文本框只能输入数字的实现方法
Oct 07 Javascript
js实现手机发送验证码功能
Mar 13 Javascript
ionic环境配置及问题详解
Jun 27 Javascript
JavaScript常见JSON操作实例分析
Aug 08 Javascript
webpack dll打包重复问题优化的解决
Oct 10 Javascript
浅谈JavaScript中this的指向问题
Jul 28 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
PHP中return 和 exit 、break和contiue 区别与用法
2012/04/09 PHP
PHP查看SSL证书信息的方法
2016/09/22 PHP
php封装的smarty类完整实例
2016/10/19 PHP
php实现的支付宝网页支付功能示例【基于TP5框架】
2019/09/16 PHP
PHP中16个高危函数整理
2019/09/19 PHP
javascript 循环读取JSON数据的代码
2010/07/17 Javascript
JQuery通过Ajax提交表单并返回结果
2011/07/31 Javascript
css样式标签和js语法属性区别
2013/11/06 Javascript
Backbone.js 0.9.2 源码注释中文翻译版
2015/06/25 Javascript
JS实现带有抽屉效果的产品类网站多级导航菜单代码
2015/09/15 Javascript
基于jQuery实现动态搜索显示功能
2016/05/05 Javascript
JavaScript制作简单分页插件
2016/09/11 Javascript
windows下更新npm和node的方法
2017/11/30 Javascript
Node.js 利用cheerio制作简单的网页爬虫示例
2018/03/01 Javascript
node.js自动上传ftp的脚本分享
2018/06/16 Javascript
angularJs自定义过滤器实现手机号信息隐藏的方法
2018/10/08 Javascript
小程序中手机号识别的示例
2020/12/14 Javascript
[31:00]2014 DOTA2华西杯精英邀请赛5 24 NewBee VS iG
2014/05/25 DOTA
[49:27]2018DOTA2亚洲邀请赛 4.4 淘汰赛 TNC vs VG 第一场
2018/04/05 DOTA
Python基础教程之tcp socket编程详解及简单实例
2017/02/23 Python
Python3实现发送QQ邮件功能(html)
2017/12/15 Python
python实现定时自动备份文件到其他主机的实例代码
2018/02/23 Python
Python使用pyh生成HTML文档的方法示例
2018/03/10 Python
Python multiprocessing多进程原理与应用示例
2019/02/28 Python
python实现QQ批量登录功能
2019/06/19 Python
详解将Python程序(.py)转换为Windows可执行文件(.exe)
2019/07/19 Python
Python获取、格式化当前时间日期的方法
2020/02/10 Python
使用Python解析Chrome浏览器书签的示例
2020/11/13 Python
详解win10下pytorch-gpu安装以及CUDA详细安装过程
2021/01/28 Python
实习销售业务员自我鉴定
2013/09/21 职场文书
护士自我评价范文
2014/01/25 职场文书
超市中秋节活动方案
2014/02/12 职场文书
拾金不昧感谢信
2015/01/21 职场文书
药店收银员岗位职责
2015/04/07 职场文书
让子弹飞观后感
2015/06/11 职场文书
java设计模式--七大原则详解
2021/07/21 Java/Android