如何访问传递给Node中next()函数的值

How do you access values passed to next() functions in Node

本文关键字:next Node 函数 何访问 访问      更新时间:2024-03-22

我正在使用NodeExpress.js为我正在进行的项目编写后端。

next()函数在中间件中用于移动到中间件链中的下一个部分,并最终移动到app.VERB()函数上。我在哪里以及如何(进一步)访问这个变量?

示例代码:

app.use(function (req, res, next) {
    User.findOne({
            'email': emailValue
        }, function (err, foundUser) {
            if (err) return next(err); 
            // Else do something
        }
    }); 
});

什么可以访问传递给next()err值?

当您将错误参数传递到next时,Express会调用您安装的任何错误中间件处理程序。错误中间件函数有四个参数,因此您可以将自己的处理程序安装为:

app.use(function(err, req, res, next) {
    // handle the err from a previous middleware's next(err) call
});

您通常会将其添加到中间件链的末尾,以便它处理所有其他中间件的错误。

有关此方面的Express文档,请参阅此处。