[英]Express-Validator not performing check
我正在使用Express开发一个简单的程序。 我添加了Express-Validator来对EJS索引文件进行检查
宣言:
const {check, validationResult} = require('express-validator/check');
用法:
//This is to post the added customer
app.post('/users/add',
check('first_name').isLength({min:5}).withMessage('Name min 5 char'), (req, res) => {
});
测试:我在名称字段中输入3个字符的名称,但是没有被捕获。
从v5.3.1(最新版本)开始,express-validator不会自动响应您的请求。
check()
函数在匹配的字段上运行您配置的检查,并将错误存储在请求中。
然后,您必须使用validationResult()
来确定您的任何验证是否失败,如下所示:
app.post('/users/add', [
check('first_name').isLength({ min: 5 }).withMessage('Name min 5 char')
], (req, res) => {
// Finds the validation errors in this request and wraps them in an object with handy functions
const errors = validationResult(req);
if (!errors.isEmpty()) {
return res.status(422).json({ errors: errors.array() });
}
// Proceed and create the user
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.