Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
ulixee
GitHub Repository: ulixee/secret-agent
Path: blob/main/mitm/lib/Utils.ts
1030 views
1
import IResourceHeaders from '@secret-agent/interfaces/IResourceHeaders';
2
3
export function parseRawHeaders(rawHeaders: string[]): IResourceHeaders {
4
const headers = {};
5
for (let i = 0; i < rawHeaders.length; i += 2) {
6
const key = rawHeaders[i];
7
const value = rawHeaders[i + 1];
8
if (headers[key] || key.toLowerCase() === 'set-cookie') {
9
if (Array.isArray(headers[key])) {
10
headers[key].push(value);
11
} else if (headers[key]) {
12
headers[key] = [headers[key], value];
13
} else {
14
headers[key] = [value];
15
}
16
} else {
17
headers[key] = value;
18
}
19
}
20
return headers;
21
}
22
23