diff --git a/src/Application.ts b/src/Application.ts index 4b9a1c7..cf1f2bc 100644 --- a/src/Application.ts +++ b/src/Application.ts @@ -71,8 +71,25 @@ export default abstract class Application { } if (err instanceof ValidationBag) { - req.flash('validation', err.getMessages()); - res.redirectBack(); + res.format({ + json: () => { + res.status(401); + res.json({ + status: 'error', + code: 401, + message: 'Invalid form data', + messages: err.getMessages(), + }); + }, + text: () => { + res.status(401); + res.send('Error: ' + err.getMessages()) + }, + html: () => { + req.flash('validation', err.getMessages()); + res.redirectBack(); + }, + }); return; }