首页 > 解决方案 > Node.js Express 回调执行问题

问题描述

如果你们中的任何人知道答案,只是一个快速的技术问题:

我正在编写一些快速中间件来捕获路线上的点击。我不在乎这段代码等待 mongo 插入完成。将 next() 放在回调之外是否安全,或者我是否冒着回调执行丢失/中断的风险?

const ClickCounter = (req, res, next) => {
     const insert = {
         path: req.path,
         ts: new Date()
     };

     console.time('click_counter');
     connector.save('Clicks', insert, (error, results) => {
        console.timeEnd('click_counter');
        if (error){
            console.trace('[Utils.ClickCounter] Error submitting click');
            console.warn(error);
        }
     });

     // placing outside of mongo query so client does not have to wait.
     next();
};

标签: node.jsmongodbexpress

解决方案


推荐阅读