假设我想添加多个参数。
这是代码
function firstArgument(req, res, next) {
// Do something
}
function secondArgument(req, res, next) {
// Do something
}
app.get('/something', firstArgument, secondArgument, function(req, res, next) {
// Is it possible to do this?
});
有可能吗?如果是这样,它是如何工作的?任何人都可以向我解释。
谢谢
答案 0 :(得分:1)
所有答案都在明文档中 - http://expressjs.com/es/guide/routing.html
总结一下,对于您的场景,您可以使用:
var cb0 = function (req, res, next) {
console.log('CB0')
next()
}
var cb1 = function (req, res, next) {
console.log('CB1')
next()
}
app.get('/example/d', [cb0, cb1], function (req, res, next) {
console.log('response will be sent by the next function ...')
next()
}, function (req, res) {
res.send('Hello from D!')
})
或者,没有第二种方法。
var cb0 = function (req, res, next) {
console.log('CB0')
next()
}
var cb1 = function (req, res, next) {
console.log('CB1')
next()
}
app.get('/example/d', [cb0, cb1], function (req, res) {
res.send('Hello from D!')
})
关于它是如何工作的 - 它只是依次运行所有方法:当调用next()方法时,将调用下一个方法。