Мне было интересно, как заставить асинхронные функции работать внутри middleware ?Обычно await
перед функцией выполняет задание, но в middleware кажется, что оно не работает.
index.js:
const bob= require('../middleware/bob');
router.get('/', [bob(['channel1','channel2','channel3'])], async (req, res) => {
console.log('3')
})
middleware / bob.js:
async function test(){
setTimeout(() => {
console.log('1')
}, 2000);
}
module.exports = function(channels){
return async(req, res, next) =>{
await test();
console.log('2')
next();
}
}
Когда я запускаю этот код.В консоли будет записано: 2 3 1