diff --git a/ee/admin-server/src/services/Router.ts b/ee/admin-server/src/services/Router.ts index b17862a5d7..3f007d8a43 100644 --- a/ee/admin-server/src/services/Router.ts +++ b/ee/admin-server/src/services/Router.ts @@ -10,6 +10,7 @@ import { LoginController } from '../controllers/LoginController' import { LegacyController } from '../controllers/LegacyController' import { PanelController } from '../controllers/PanelController' import { ProjectController } from '../controllers/ProjectController' +import { refreshAuthCookie } from '../utils/cookies' export class Router { constructor( @@ -25,6 +26,7 @@ export class Router { } async handle(req: IncomingMessage, res: ServerResponse) { + refreshAuthCookie(req, res) try { const url = new URL(req.url ?? '/', `http://${req.headers.host}`) const [prefix, ...rest] = url.pathname.substring(1).split('/') diff --git a/ee/admin-server/src/utils/cookies.ts b/ee/admin-server/src/utils/cookies.ts index 47f7037af8..ca8933b5c2 100644 --- a/ee/admin-server/src/utils/cookies.ts +++ b/ee/admin-server/src/utils/cookies.ts @@ -21,3 +21,10 @@ export function writeAuthCookie(req: IncomingMessage, res: OutgoingMessage, toke }), ) } + +export const refreshAuthCookie = (req: IncomingMessage, res: OutgoingMessage): void => { + const token = readAuthCookie(req) + if (token !== null) { + writeAuthCookie(req, res, token) + } +}