This repository has been archived on 2023-10-27. You can view files and clone it, but cannot push or open issues or pull requests.
node-fetch-cache/classes/headers.js

34 lines
559 B
JavaScript
Raw Normal View History

2020-11-28 04:28:00 +00:00
class Headers {
constructor(rawHeaders) {
this.rawHeaders = rawHeaders;
}
entries() {
2021-06-11 19:25:53 +00:00
return Object.entries(this.rawHeaders)
.sort((e1, e2) => e1[0].localeCompare(e2[0]))
.map(([key, val]) => [key, val[0]]);
2020-11-28 04:28:00 +00:00
}
keys() {
2021-06-11 19:25:53 +00:00
return this.entries().map((e) => e[0]);
2020-11-28 04:28:00 +00:00
}
values() {
2021-06-11 19:25:53 +00:00
return this.entries().map((e) => e[1]);
2020-11-28 04:28:00 +00:00
}
get(name) {
2021-06-11 19:25:53 +00:00
return (this.rawHeaders[name.toLowerCase()] || [])[0];
2020-11-28 04:28:00 +00:00
}
has(name) {
return !!this.get(name);
}
2020-11-28 16:02:55 +00:00
raw() {
return this.rawHeaders;
}
2020-11-28 04:28:00 +00:00
}
module.exports = Headers;