From 93d6cfd930a9b0b3ee62183ad5d01f12a4fe92fc Mon Sep 17 00:00:00 2001 From: tycrek Date: Mon, 26 Dec 2022 11:50:03 -0700 Subject: [PATCH] feat: improve error handling for API --- src/routers/api.ts | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/src/routers/api.ts b/src/routers/api.ts index 1eace94..2c649de 100644 --- a/src/routers/api.ts +++ b/src/routers/api.ts @@ -21,11 +21,20 @@ const RouterApi = Router(); */ const errorHandler = (res: Response, err: Error | any) => { log.error(err); + + // Get the status code for the Response + let code: number; switch (err.message) { - case 'User not found': return res.sendStatus(404); - case 'Meta key already exists': return res.sendStatus(409); - default: return res.sendStatus(500); + case 'User not found': + code = 404; break; + case 'Meta key already exists': + case 'Username already taken': + code = 409; break; + default: + code = 500; } + + return res.status(code).type('text').send(err.message ?? err); }; /**