Express中的app.use(' *')和app.all(' *')之间的区别

时间:2014-05-25 02:07:57

标签: node.js express

之间有区别吗?
app.use('*', function (req, res, next) {

});

和...

app.all('*', function (req, res, next) {

});

2 个答案:

答案 0 :(得分:5)

app.all()引用应用程序路由器,如postget,而app.use()只引用应用程序中间件。 app.use()对于您希望在整个应用程序中持久化的更全局定义的语句更好。

答案 1 :(得分:-2)

app.use只接受一个回调函数,它意味着中间件。中间件通常不处理请求和响应(技术上他们可以),他们只处理输入数据,并将其移交给队列中的下一个处理程序。

app.use([路径],功能) app.all采取多个回调,并用于路由。通过多个回调,您可以过滤请求并发送响应。它在express.js上的过滤器中进行了解释

app.all(路径,[回调...],回调)