From 65cd8a95eb880256ffada8b8be4609014b752927 Mon Sep 17 00:00:00 2001 From: Jackson Harper Date: Mon, 14 Feb 2022 16:04:23 -0800 Subject: [PATCH] Better handling of situations where we fail to set the cookie during auth --- packages/api/src/routers/auth/auth_router.ts | 22 ++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/packages/api/src/routers/auth/auth_router.ts b/packages/api/src/routers/auth/auth_router.ts index 9fee4b744..0e63ae533 100644 --- a/packages/api/src/routers/auth/auth_router.ts +++ b/packages/api/src/routers/auth/auth_router.ts @@ -275,7 +275,16 @@ export function authRouter() { ) } - res.setHeader('set-cookie', String(result.headers['set-cookie'])) + if (!result.headers['set-cookie']) { + return res.redirect( + `${env.client.url}/${ + // eslint-disable-next-line @typescript-eslint/no-explicit-any + (req.params as any)?.action + }?errorCodes=unknown` + ) + } + + res.setHeader('set-cookie', result.headers['set-cookie']) handleSuccessfulLogin(req, res, user, data.googleLogin.newUser) }) @@ -384,7 +393,16 @@ export function authRouter() { ) } - res.setHeader('set-cookie', String(result.headers['set-cookie'])) + if (!result.headers['set-cookie']) { + return res.redirect( + `${env.client.url}/${ + // eslint-disable-next-line @typescript-eslint/no-explicit-any + (req.params as any)?.action + }?errorCodes=unknown` + ) + } + + res.setHeader('set-cookie', result.headers['set-cookie']) await handleSuccessfulLogin(req, res, data.login.me, false) } catch (e) {