将参数传递给路由器中间件功能

时间:2016-08-27 14:05:13

标签: node.js express

我想创建将验证数据的通用中间件,

我的问题是我如何向中间件发送附加参数(即validateRequest),我想发送的其他参数对于确定需要验证哪些字段很有用。

以下是用于理解的示例代码。

/

1 个答案:

答案 0 :(得分:3)

var express = require('express');
var router = express.Router();
var users = require('./controllers/users.js');

router.post('/api/v1/user/', validateRequest(['field1', 'field2']), users.create);

function validateRequest(fields){
    var middleware = function (req,res, next) {
        // code goes here
    }
    return middleware;
}

module.exports = router;