cyb*_*bat 9 validation node.js express
我使用的是express-validator版本2.3.0.似乎总是需要字段
req.check('notexist', 'This failed').isInt();
Run Code Online (Sandbox Code Playgroud)
永远都会失败 - 破碎还是我错过了什么?有一个notEmpty必填字段的方法似乎表明默认是可选的,但我无法通过上述方法.
Mos*_*tov 57
您可以使用以下optional方法:
req.check('notexist', 'This works').optional().isInt();
Run Code Online (Sandbox Code Playgroud)
编辑: 请参阅此处的文档
Abd*_*lol 19
至于express-validator 6它是这样做的:
check('email').isEmail().optional({nullable: true})
Run Code Online (Sandbox Code Playgroud)
从文档:
您可以通过传递具有以下选项的对象来自定义此行为:
nullable:如果为真,则具有空值的字段将被视为可选
checkFalsy:如果为真,带有假值(例如“”、0、假、空)的字段也将被视为可选
有关可选规则的更多信息。