async-express
Simple middleware wrapper to make Express handlers async compatible.
Usage
npm install --save async-express
In a route
const express = require('express');
const asyncExpress = require('async-express');
const app = express();
app.get('/', asyncExpress(async (req, res, next) => {
await new Promise(r => setTimeout(r, 5000));
res.send('Waited 5 seconds successfully');
}));
The sample above can be refactored as the following
const express = require('express');
const asyncExpress = require('async-express');
const app = express();
const waitForABit = asyncExpress(async (req, res, next) => {
await new Promise(r => setTimeout(r, 5000));
res.send('Waited 5 seconds successfully');
});
app.get('/', waitForABit);