The Headers() constructor creates a new Headers object.
Syntax
var myHeaders = new Headers(init);
Parameters
- init Optional
- An object containing any HTTP headers that you want to pre-populate your
Headersobject with. This can be a simple object literal withByteStringvalues; or an existingHeadersobject. In the last case, the newHeadersobject inherits its data from the existingHeadersobject.
Example
Creating an empty Headers object is simple:
var myHeaders = new Headers(); // Currently empty
You could add a header to this using Headers.append:
myHeaders.append('Content-Type', 'image/jpeg');
myHeaders.get('Content-Type'); // Returns 'image/jpeg'
Or you can add the headers you want as the Headers object is created. In the following snippet we create a new Headers object, adding some headers by passing the constructor an init object as an argument:
var httpHeaders = { 'Content-Type' : 'image/jpeg', 'Accept-Charset' : 'utf-8', 'X-My-Custom-Header' : 'Zeke are cool' };
var myHeaders = new Headers(httpHeaders);
You can now create another Headers object, passing it the first Headers object as its init object:
var secondHeadersObj = new Headers(myHeaders);
secondHeadersObj.get('Content-Type'); // Would return 'image/jpeg' — it inherits it from the first headers object
Specifications
| Specification | Status | Comment |
|---|---|---|
| Fetch The definition of 'Headers()' in that specification. |
Living Standard |
Browser compatibility
| Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
|---|---|---|---|---|---|
| Basic support | 42 41 behind pref |
39 (39) 34 behind pref |
No support |
29 |
10.1 |
| Feature | Android | Firefox Mobile (Gecko) | Firefox OS (Gecko) | IE Phone | Opera Mobile | Safari Mobile | Chrome for Android |
|---|---|---|---|---|---|---|---|
| Basic support | No support | No support | No support | No support | No support | No support | No support |