From 18787317da278458536edf8ab98944ebddcfbcee Mon Sep 17 00:00:00 2001 From: Rohit Date: Sat, 15 Feb 2025 12:18:54 +0530 Subject: [PATCH] feat: add code for error messages --- server/src/routes/auth.ts | 38 +++++++++++++++++++++++++++++++------- 1 file changed, 31 insertions(+), 7 deletions(-) diff --git a/server/src/routes/auth.ts b/server/src/routes/auth.ts index 47eced63..f18ee8c1 100644 --- a/server/src/routes/auth.ts +++ b/server/src/routes/auth.ts @@ -140,14 +140,38 @@ router.post("/login", async (req, res) => { } }); -router.get("/logout", async (req, res) => { - try { - res.clearCookie("token"); - return res.json({ message: "Logout successful" }); - } catch (error: any) { - res.status(500).send(`Could not logout user - ${error.message}`); +router.get( + "/logout", + requireSignIn, + async (req: Request, res) => { + const authenticatedReq = req as AuthenticatedRequest; + try { + if (!authenticatedReq.user) { + return res.status(401).json({ + ok: false, + message: "Unauthorized", + code: "unauthorized" + }); + } + + res.clearCookie("token"); + + return res.status(200).json({ + ok: true, + message: "Logged out successfully", + code: "success" + }); + } catch (error) { + console.error('Logout error:', error); + return res.status(500).json({ + ok: false, + message: "Error during logout", + code: "server", + error: process.env.NODE_ENV === 'development' ? error : undefined + }); + } } -}); +); router.get( "/current-user",