diff --git a/lib/util/routing.ts b/lib/util/routing.ts index 2f2ab37..23bc128 100644 --- a/lib/util/routing.ts +++ b/lib/util/routing.ts @@ -10,12 +10,6 @@ export const handleRoute = (controller: RouteController) => { const [method, rule] = controllerRule as [MethodName, RouteHandlerRules]; const internalHandler = async (context: ExtendedContext) => { - const { - body = null, - code = 200, - headers = {}, - } = await rule.handler(context); - const errors: string[] = (await rule.validation ?.validate(context.request?.body) .catch(({ errors }: { errors: string[] }) => errors)) as string[]; @@ -26,6 +20,12 @@ export const handleRoute = (controller: RouteController) => { return; } + const { + body = null, + code = 200, + headers = {}, + } = await rule.handler(context); + context.status = code; (context as unknown as { body: object | unknown }).body = body; for (const [key, value] of Object.entries(headers))