UNPKG

koa-mongo-router

Version:
53 lines (52 loc) 1.61 kB
Object.defineProperty(exports, "__esModule", { value: true }); exports.koaErrorHandler = void 0; const http_1 = require("http"); async function koaErrorHandler(ctx, next) { try { await next(); } catch (err) { /* istanbul ignore else */ if (typeof err.status === 'number') { ctx.body = { status: err.status, message: http_1.STATUS_CODES[err.status], }; ctx.status = err.status; if (err != undefined) { if (err.errorName != undefined) { ; ctx.body.errorName = err.errorName; } if (err.message != undefined) { ; ctx.body.error = err.message; } } } else { ctx.status = 500; ctx.body = { status: 500, message: http_1.STATUS_CODES[500], }; ctx.state.error = err; if (err != undefined) { if (err.errorName != undefined) { ; ctx.body.errorName = err.errorName; } if (err.message != undefined) { ; ctx.body.error = err.message; } if (err.stack != undefined) { ; ctx.body.stack = err.stack.split('\n'); } } } ctx.app.emit('error', err, ctx); } } exports.koaErrorHandler = koaErrorHandler;