From d8866abe0af47b3ecf030c109a67249b494ec9c2 Mon Sep 17 00:00:00 2001 From: Alexander Onnikov Date: Mon, 9 Mar 2026 01:24:40 +0700 Subject: [PATCH] fix: improve cookie token selection (#10599) Signed-off-by: Alexander Onnikov --- .../server/packages/client/src/token.ts | 25 ++++++++++++------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/foundations/server/packages/client/src/token.ts b/foundations/server/packages/client/src/token.ts index 0ee0cff137..a0770e20cd 100644 --- a/foundations/server/packages/client/src/token.ts +++ b/foundations/server/packages/client/src/token.ts @@ -6,18 +6,25 @@ const extractCookieToken = (cookie?: string): string | null => { return null } + let authToken: string | null = null + const cookies = cookie.split(';') - const tokenCookie = cookies.find((cookie) => cookie.toLocaleLowerCase().includes('token')) - if (tokenCookie === undefined) { - return null + for (const cookie of cookies) { + if (cookie.toLocaleLowerCase().includes('token')) { + try { + const encodedToken = cookie.split('=')[1] + const token = decodeToken(encodedToken) + + if (token.workspace != null) { + return encodedToken + } + + authToken = encodedToken + } catch {} + } } - const encodedToken = tokenCookie.split('=')[1] - if (encodedToken === undefined) { - return null - } - - return encodedToken + return authToken } const extractAuthorizationToken = (authorization?: string): string | null => {