Catch errors from async express routes and pass them to error catcher middleware

Downloads in past


1.2.06 years ago8 years agoMinified + gzip package size for async-error-catcher in KB


Async Error Catcher for ExpressJS routes
A helper to automatically catch errors thrown within ExpressJS routes and then pass them to the next function so they can be picked up by your error handler at the end of the stack.
import express, { Router } from 'express';
import catchErrors from 'async-error-catcher';

const app = express();
const router = new Router();

async function route(req, res, next) {
    /* Do something asynchronous */



/* Error Handler middleware */
app.use((err, req, res, next) => {
    /* Handle Errors */

This also works for any middleware or route function that returns a promise.
For a more detailed breakdown, I've explained a bit more on my blog.
NOTE: Written in ES6, but compiled back to ES5 with babel