浅谈在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 相关文章推荐
如何在标题栏显示框架内页面的标题
Feb 03 Javascript
复选框全选与全不选操作实现思路
Aug 18 Javascript
详细介绍jQuery.outerWidth() 函数具体用法
Jul 20 Javascript
Javascript实现的SHA-256加密算法完整实例
Feb 02 Javascript
如何利用Promises编写更优雅的JavaScript代码
May 17 Javascript
JS中常用的输出方式(五种)
Jun 12 Javascript
jQuery自定义插件详解及实例代码
Dec 29 Javascript
js实现放大镜特效
May 18 Javascript
Webpack中雪碧图插件使用详解
May 25 Javascript
js动态获取时间的方法分析
Aug 02 Javascript
使用VScode 插件debugger for chrome 调试react源码的方法
Sep 13 Javascript
JS指定音频audio在某个时间点进行播放
Nov 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利用COM对象访问SQLServer、Access
2006/10/09 PHP
PHP中冒号、endif、endwhile、endfor使用介绍
2010/04/28 PHP
PHP中new static()与new self()的区别异同分析
2014/08/22 PHP
浅谈PHP接收POST数据方式
2015/06/05 PHP
PHP基于文件存储实现缓存的方法
2015/07/20 PHP
php实现的pdo公共类定义与用法示例
2017/07/19 PHP
找到了一篇jQuery与Prototype并存的冲突的解决方法
2007/08/29 Javascript
js 省地市级联选择
2010/02/07 Javascript
jQuery Dialog 弹出层对话框插件
2010/08/09 Javascript
jQuery UI Dialog 创建友好的弹出对话框实现代码
2012/04/12 Javascript
JS 如何获取radio选中后的值及不选择取radio的值
2013/10/28 Javascript
解决Jquery鼠标经过不停滑动的问题
2014/03/03 Javascript
Egret引擎开发指南之视觉编程
2014/09/03 Javascript
javascript中bind函数的作用实例介绍
2014/09/28 Javascript
javascript 数组操作详解
2015/01/29 Javascript
Angular实现跨域(搜索框的下拉列表)
2017/02/16 Javascript
jQuery实现全选、反选和不选功能
2017/08/16 jQuery
jQuery实现模糊搜索功能的方法分析
2018/06/29 jQuery
VUE DOM加载后执行自定义事件的方法
2018/09/07 Javascript
Angular(5.2->6.1)升级小结
2018/12/27 Javascript
layui使用数据表格实现购物车功能
2019/07/26 Javascript
浅谈JavaScript 声明提升
2020/09/14 Javascript
Handtrack.js库实现实时监测手部运动(推荐)
2021/02/08 Javascript
[01:12:44]VG vs Mineski Supermajor 败者组 BO3 第二场 6.6
2018/06/07 DOTA
Python 列表(List) 的三种遍历方法实例 详解
2017/04/15 Python
python多任务之协程的使用详解
2019/08/26 Python
pyecharts调整图例与各板块的位置间距实例
2020/05/16 Python
Python 实现敏感目录扫描的示例代码
2020/05/21 Python
Easy Spirit官网:美国休闲鞋履中的代表品牌
2019/04/12 全球购物
高中生学习总结的自我评价范文
2013/10/13 职场文书
农村党支部先进事迹
2014/01/14 职场文书
党政领导班子四风问题对照检查材料思想汇报
2014/10/02 职场文书
2014个人年度工作总结
2014/12/15 职场文书
《攀登者》:“海拔8000米以上,你不能指望任何人”
2019/11/25 职场文书
纯CSS实现酷炫的霓虹灯效果
2021/04/13 HTML / CSS
python人工智能human learn绘图可创建机器学习模型
2021/11/23 Python