Headers.set()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since March 2017.
Headers
接口中 set()
方法在可以在已经声明中的 headers
对象修改已有的一组键值对或者创建一个新的键值对。
set()
方法和 append()方法不同的是声明的 Headers
对象是否已经存在对应的 keys
是否已经存在并且已经赋值。set()
方法将会覆盖之前的 value
,然而 append()方法只会在 Headers
对象的尾部添加一个新的键值对。
为了安全策略,一些 **Headers
**对象中的键值对只能客户端去控制。这些 key
包括Forbidden response header name 和 Forbidden responese header names 。
语法
myHeaders.set(name, value);
参数
返回
Void.
Example
创建一个新的 Headers
对象:
js
var myHeaders = new Headers(); // Currently empty
你可以用append()方法给Headers
对象增添一个新的键值对,然后用 set()
方法去改变这个键值对:
js
myHeaders.append("Content-Type", "image/jpeg");
myHeaders.set("Content-Type", "text/html");
如果这个键值对不存在,那么 set()
方法首先创建一个键值对,然后给它赋值。如果这个键值对存在,那么 set()
方法将会覆盖之前的 value
值:
js
myHeaders.set("Accept-Encoding", "deflate");
myHeaders.set("Accept-Encoding", "gzip");
myHeaders.get("Accept-Encoding"); // Returns 'gzip'
如果你需要增加一个键值对,而不是要覆盖之前的键值对,那么你需要用append()方法。
Specifications
Specification |
---|
Fetch Standard # ref-for-dom-headers-set① |
Browser compatibility
BCD tables only load in the browser