From aacd95f92fcbf570f58f387cbb5aca6e8d404093 Mon Sep 17 00:00:00 2001 From: Rotimi Best Date: Sat, 30 Aug 2025 08:00:25 +0100 Subject: [PATCH] feat: add error handling for unauthenticated users in hooks middleware --- apps/dashboard/src/hooks.server.ts | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/apps/dashboard/src/hooks.server.ts b/apps/dashboard/src/hooks.server.ts index 9175b3d3..c83d017c 100644 --- a/apps/dashboard/src/hooks.server.ts +++ b/apps/dashboard/src/hooks.server.ts @@ -3,11 +3,11 @@ import { validateUser } from '$lib/utils/services/middlewares'; const PUBLIC_ROUTES = [ '/api/completion', - '/api/verify', 'student_prove_payment', 'teacher_student_buycourse', '/api/polar', - '/api/lmz' + '/api/lmz', + '/api/verify' ]; function isPublicRoute(pathname: string) { @@ -31,9 +31,22 @@ export const handle: Handle = async ({ event, resolve }) => { const accessToken = event.request.headers.get('Authorization')!; - const user = await validateUser(accessToken); + try { + const user = await validateUser(accessToken); - response.headers.set('user_id', `${user.id}`); + response.headers.set('user_id', `${user.id}`); + } catch (error) { + if (error instanceof Error) { + if (error.message === 'Unauthenticated user') { + return new Response( + JSON.stringify({ code: 'unauthenticated', message: 'Unauthenticated user' }), + { + status: 401 + } + ); + } + } + } return response; };