@coolio/http
Version:
HTTP networking client
32 lines • 1.01 kB
JavaScript
import { getHeader, parseHeaders } from './helpers';
export class HttpResponseHeaders {
constructor(headers = {}) {
if (typeof headers === 'string') {
this.map = headers
.split('\n')
.reduce((map, header) => {
const [key, value] = header
.split(':')
.map(element => decodeURIComponent(element.trim()));
map[key.toLowerCase()] = value;
return map;
}, {});
}
else if (headers.forEach) {
this.map = parseHeaders(headers);
}
else {
this.map = Object.keys(headers).reduce((result, key) => {
result[key.toLowerCase()] = headers[key];
return result;
}, {});
}
}
set(key, value) {
this.map[key.toLowerCase()] = value;
}
get(key) {
return getHeader(this.map, key);
}
}
//# sourceMappingURL=httpResponseHeaders.js.map