express-validator打破验证器链

时间:2016-11-06 15:20:52

标签: node.js validation express express-validator

我正在使用Express-validator插件进行快递

SELECT t.*, r.* 
FROM t LEFT OUTER JOIN 
r ON t._id=r_identifier 
WHERE 
    (r_date IS NULL) OR 
    (r_date=(SELECT MAX(r2.r_date) 
    FROM r r2 
    WHERE r.r_identifier=r2.r_identifier));

如果我传递用户名为空输出

var input = {
            'username': {
                notEmpty: true,
                isEmail: {
                    errorMessage: 'Invalid Email.'
                }
            },
            'password': {
                notEmpty: true,
                errorMessage: 'Invalid Password' // Error message for the parameter
            }
        };

    req.checkBody(input);
    var errors = req.validationErrors();
    if (errors) {
        console.log(errors);
    }

如果任何一个验证失败,如何制动链条。

2 个答案:

答案 0 :(得分:1)

对此的修复终于落入 v3.0.0!

req.getValidationResult().then( result => {
  var errors = result.useFirstErrorOnly().array(); // enjoy an array with no duplicated errors for any given parameter!
})

答案 1 :(得分:1)

看起来您需要为空参数添加错误消息:

用户名:{                 不是空的: {                     errorMessage:'用户名不能是emtpy'                 },                 isEmail:{                     errorMessage:'电子邮件无效。'                 }             } ...