我在使用[Express的路由处理方法]时遇到了麻烦,特别是在Post函数中。
(http://expressjs.com/api.html#app.VERB)
我正在尝试解析这个护照例子中的一段代码。
app.post('/login',
passport.authenticate('local', { failureRedirect: '/login', failureFlash: true }),
function(req, res) {
res.redirect('/');
});
Express文档中提到:
如果有多个回调函数,所有的回调函数都被平等对待,就像中间件一样。
我的问题是,以下陈述是否准确:
中间件就像一堆管道相互连接。出现在最前面的中间件也是按照列表顺序排列的中间件。如果数据是水,它会通过第一个列表中的管道流动。
对于路由处理方法中的回调也是一样的:回调之间是通过管道相互连接的,如果你把数据“倒”进这些“管道”,数据会先经过列表中的第一个回调再经过第二个回调。这个说法正确吗?
作为后续问题,这些回调函数应该返回什么?第一个回调函数返回响应,第二个回调函数会将其作为请求接收并处理吗?管道里应该输出什么内容?我可以将它放进第二个管道里吗?
authenticate
。 - Renato Gama