我想知道如何使异步函数在中间件中工作?通常在函数前面等待完成工作,但在中间件中似乎无法正常工作.
index.js:
const bob= require('../middleware/bob'); router.get('/',[bob(['channel1','channel2','channel3'])],async (req,res) => { console.log('3') })
中间件/ 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
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。