繁体   English   中英

Express-Validator不执行检查

[英]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
});

入门指南验证结果API中提供了更多信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM