fetch 之 header
在了解header之前,我们要先了解.graud这个东西https://blog.csdn.net/jiaoqi6132/article/details/104167548
Fetch API 的 Headers 接口允许您对HTTP请求和响应头执行各种操作。 这些操作包括检索,设置,添加和删除。 一个Headers对象具有关联的头列表,它最初为空,由零个或多个键值对组成。你可以使用 append()
方法添加 之类的方法添加到此.用在绿色的方框里的.
1.Header的构造函数
var myHeaders = new Headers(init);
init 可选
通过一个包含任意 HTTP headers 的对象来预设你的 Headers
. 可以是一个ByteString
对象; 或者是一个已存在的 Headers
对象.
一个实现了Headers
的对象可以直接用于 for...of
结构中, 而不是 entries()
: for (var p of myHeaders)
等价于 for (var p of myHeaders.entries())
.
2. 方法
(1).Headers.append()
myHeaders.append(name,value);
给现有的header添加一个值, 或者添加一个未存在的header并赋值.
name:要追加给Headers对象的HTTP header名称.
value:要追加给Headers对象的HTTP header值.
(2).Headers.get()
myHeaders.get(name);
name
从Headers对象中检索的HTTP header 名,如果HTTP header中不存在指定header名则会抛出一个TypeError
.
以 ByteString
形式返回检索到的值.
(3).Headers.delete()
从Headers对象中删除指定header.
myHeaders.delete(name);
name:需删除的HTTP header名称.
(4)Headers.has()
以布尔值的形式从Headers对象中返回是否存在指定的header.
myHeaders.has(name);
name:你要测试的HTTP头字段的名称。如果给出的名称不在HTTP头中,将爬出异常TypeError
。
Returns: A Boolean
.
(5).Headers.entries()
以 迭代器
的形式返回Headers对象中所有的键值对.
headers.entries();
Return value :返回一个 迭代器
.
(6.)Headers.set()
myHeaders .set(name,value);
name
:要设置为新值的HTTP标头的名称。如果给定名称不是HTTP标头的名称,则此方法将引发TypeError
。
value
您要设置的新值。
(7).Headers.forEach()
对每个数组元素执行一次提供的功能。还在开发,根据数组方法去迭代
(8).Headers.values()
<span style="color:#333333">headers.values();</span>
该Headers.values()
方法返回iterator
允许遍历此对象中包含的所有值的方法。值是ByteString
对象。
(9).Headers.keys()
headers.keys();
该Headers.keys()
方法返回iterator
允许浏览此对象中包含的所有键的信息。键是ByteString
对象。
3.注意点
(1).Headers.set()
和 Headers.append()
的使用
值得注意的是,在header已存在或者有多个值的状态下Headers.set()
和 Headers.append()
的使用有如下区别, Headers.set()
将会用新的值覆盖已存在的值, 但是Headers.append()
会将新的值添加到已存在的值的队列末尾. 请参相关词条内的示例代码.
(2).触发错误
如果您尝试传入名称不是有效的HTTP头名称的引用,则所有Headers方法都将引发 TypeError
。 如果头部有一个不变的Guard,则变异操作将会抛出一个 TypeError
。 在其他任何失败的情况下,他们默默地失败。
A header consists of a name and value.
A name is a byte sequence that matches the field-name token production.
A value is a byte sequence that matches the following conditions:
Has no leading or trailing HTTP tab or space bytes.
Contains no 0x00 (NUL) or HTTP newline bytes.
每个标头字段均包含一个不区分大小写的字段名,后跟冒号(“:”),可选的前导空格,字段值和可选的尾随空格。
(3).重复表头的危害
重复遍历标头值时,它们将按字典顺序自动排序,并且来自重复标头名称的值将合并在一起。
返回值
fetch 之 header相关推荐
- IMAP 称作交互邮件访问协议
Internet Message Access Protocol(缩写为IMAP,以前称作交互邮件访问协议)是一个应用层协议,用来从本地邮件客户端(如MicrosoftOutlook. Outlook ...
- PHP_Smarty
模板 数据与表现层的标签分离 smarty是PHP 与 HTML代码的分离 小型模板类 $smarty 的工作流程: 把需要显示的全局变量,赋值塞到对象内部的属性上,一个数组中. 编译模板,把{$标签 ...
- pop3 postfix 命令_POP3/SMTP/IMAP4 常用命令
POP3 连接服务器 c: telnet pop.sohu.com 110 s: +OK POP3 ready 输入用户名 c: USER *** s: +OK 输入密码 c: PASS *** s: ...
- telnet测试136邮箱imap服务器
telnet测试前准备 163邮箱账号一个,登陆邮箱在设置中开启imap服务,设置授权码,此授权码为telnet是用到的登陆密码.本例用163邮箱账号:test@163.com 密码:xxxxxxxx ...
- IMAP协议RFC3501中文文档
因特网邮件访问协议,版本4rev1(IMAP4rev1)允许一个客户端访问和操作在一个服务器上的电子邮件.IMAP4rev1允许,以一 种功能上等效于本地文件夹的方式,操作邮箱(远程邮件文件夹).IM ...
- shopify开发经验
1.任意页面直接跳转checkout页面 目前shopify 购买按钮直接跳转到结账页面,shopify没有提供官方方法,但是 有一个黑科技方法,通过模拟 提交购物车到结账页面的形式 例子: < ...
- 用POP3获取邮箱邮件内容,支持SSL验证登陆(完整C#源码)
延续上一篇用POP3获取邮箱邮件内容(C#源码) 上一篇中提到一个问题,网上一般流传的是非SSL验证登陆的,适用163之类的邮箱,但是QQ邮箱一般都是登陆不上的.这次我来提供一个支持SSL验证登陆的方 ...
- 使用 PHP PDO 创建登录和注册表单
在本教程中,我们将使用 PHP创建一个PDO 登录和注册.PHP 是一种服务器端脚本语言,主要用于 Web 开发.PDO 代表 PHP 数据对象.这是访问数据库的一种精简且一致的方式.这意味着开发人员 ...
- Java入侵检测系统(一)
这学期上了入侵检测实验,因为一开始就打算做这个包分析系统,结果拖延症再发,现在开始一边学php一边做入侵检测(为了保证进度,我会不定期更新文章督促自己). Jpcap抓包类,看到一篇论文,讲的比较好 ...
最新文章
- PHP封装的curl请求:有报错信息的 get post
- 启动ipython内核发生错误_ipython3启动
- 性能测试过程中oracle数据库报ORA-27301 ORA-27302错
- mac10.11重装php,macosx-10.11-更新osx10.11后,删除自带php版本,重新编译php5.5.29,到make阶段提示错误。...
- C++STL优先队列小根堆大根堆自定义的应用
- python中punctuation_Python中的字符串
- win10 远程桌面连接设置
- simulink——产生阶梯波
- 苹果手机怎么设置新的id
- Linux下,基于EETI触屏控制器的触屏失灵解决方法
- SEM数据该如何分析?
- 任务并行库(Task Parellel Library)parallel.for parallel.foreach、List、ConcurrentBag 并行集合、线程安全结合
- UltraEdit 文本代码程序编辑器免费版下载安装教程
- 借助智能手机应用程序和可穿戴设备在夏季塑造身材
- 对PHM铣刀磨损数据进行分析
- 网络工程计算机文科可以报考么,文科生可以报考网络工程专业吗
- N0wayBack 春节红包题
- eclipse开发jsp网站
- GPS基础知识(二)、 GPS时间
- 推荐26个GitHub上好玩又有挑战的前端项目(涵盖初中高阶)