diff --git a/packages/socket.io/lib/client.ts b/packages/socket.io/lib/client.ts index 50b2eae3b..08f4b1ec4 100644 --- a/packages/socket.io/lib/client.ts +++ b/packages/socket.io/lib/client.ts @@ -11,6 +11,16 @@ import type { Socket as RawSocket } from "engine.io"; const debug = debugModule("socket.io:client"); +function objectFromEntries( + entries: Iterable, +): Record { + const obj: Record = Object.create(null); + for (const [key, value] of entries) { + obj[key as string] = value; + } + return obj; +} + interface WriteOptions { compress?: boolean; volatile?: boolean; @@ -296,7 +306,7 @@ export class Client< const url = new URL(packet.nsp, "https://socket.io"); return { namespace: url.pathname, - authPayload: Object.fromEntries(url.searchParams.entries()), + authPayload: objectFromEntries(url.searchParams.entries()), }; }