From 5cda141f2d71e8379a14498db8fa2d997c477a52 Mon Sep 17 00:00:00 2001 From: Leo Kettmeir Date: Mon, 10 Jul 2023 13:48:35 +0200 Subject: fix(node/http): server use FakeSocket and add end method (#19660) Fixes #19324 --- ext/node/polyfills/http.ts | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'ext/node') diff --git a/ext/node/polyfills/http.ts b/ext/node/polyfills/http.ts index fcc490920..e3419e88b 100644 --- a/ext/node/polyfills/http.ts +++ b/ext/node/polyfills/http.ts @@ -274,7 +274,15 @@ const kError = Symbol("kError"); const kUniqueHeaders = Symbol("kUniqueHeaders"); class FakeSocket extends EventEmitter { + constructor(opts = {}) { + super(); + this.remoteAddress = opts.hostname; + this.remotePort = opts.port; + } + setKeepAlive() {} + + end() {} } /** ClientRequest represents the http(s) request from the client */ @@ -1331,6 +1339,7 @@ export class ServerResponse extends NodeWritable { }); this.#readable = readable; this.#resolve = resolve; + this.socket = new FakeSocket(); } setHeader(name: string, value: string) { @@ -1446,10 +1455,10 @@ export class IncomingMessageForServer extends NodeReadable { // url: (new URL(request.url).pathname), this.url = req.url?.slice(req.url.indexOf("/", 8)); this.method = req.method; - this.socket = { + this.socket = new FakeSocket({ remoteAddress: remoteAddr.hostname, remotePort: remoteAddr.port, - }; + }); this.#req = req; } -- cgit v1.2.3