是否可以为特定的HTTP方法添加快速中间件?

时间:2015-09-17 19:19:28

标签: node.js express

我想添加一个 Express 中间件,必须在POST请求发生时触发(无论路由网址如何)。

我认为这样的事情应该有效:

app.use(function (req, res, next) {

  if (req.method === 'POST') {
    console.log('Time:', Date.now());
  }

});

但我想知道 Express 是否有开箱即用的功能来处理这些情况。

2 个答案:

答案 0 :(得分:2)

app.post(function (req, res, next) {

http://expressjs.com/api.html#router.METHOD

答案 1 :(得分:0)

以前的答案不仅正确,而且您还可以将中间件添加到特定路线,如:

var addCustomField=function(req,res,next){ // assumes bodyparser
  if('object'===typeof res.body){
    res.body.myCustomField=true;
  }
  next();
};

app.post('/path',addCustomField,function(req,res){
  // ...
});