diff options
Diffstat (limited to 'ext/node/polyfills/http.ts')
-rw-r--r-- | ext/node/polyfills/http.ts | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/ext/node/polyfills/http.ts b/ext/node/polyfills/http.ts index c6c112a50..f009d8a9e 100644 --- a/ext/node/polyfills/http.ts +++ b/ext/node/polyfills/http.ts @@ -1420,6 +1420,26 @@ export class ServerResponse extends NodeWritable { return this; } + appendHeader(name: string, value: string | string[]) { + if (Array.isArray(value)) { + this.#hasNonStringHeaders = true; + } + if (this.#headers[name] === undefined) { + this.#headers[name] = value; + } else { + if (!Array.isArray(this.#headers[name])) { + this.#headers[name] = [this.#headers[name]]; + } + const header = this.#headers[name]; + if (Array.isArray(value)) { + header.push(...value); + } else { + header.push(value); + } + } + return this; + } + getHeader(name: string) { return this.#headers[name]; } |