我有许多类似于以下内容的中间件功能:
function validate(req, res, next) {
req.validationError = new Error('invalid');
}
function checkValid(req, res, next) {
if (req.validationError) {
next(req.validationError);
} else {
next();
}
}
function respond() {
res.json({result: 'success'});
}
有没有办法将它们包装到一个函数中?所以我会做类似的事情:
function respondIfValid(req, res, next) {
// Evoke the following middleware:
// validate
// checkValid
// respond
}
app.use('/', respondIfValid);
代替:
app.use('/', validate, checkValid, respond);
解决方法:
尝试以下代码
app.use('/', [validate, checkValid,respond]);
要么
var middleware = [validate, checkValid,respond];
app.use('/', middleware );
需要将所有功能放在该系列中,作为您执行的要求.
谢谢
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。