我正在对用户输入进行快速验证器验证。另外,我检查了用户的头像。验证器被触发,它显示我没有输入单个字段的错误:
{
"err": [
{
"location": "body",
"param": "user_name",
"msg": "Invalid value"
},
{
"location": "body",
"param": "user_name",
"msg": "Invalid value"
},
...
]
}
为什么它有效catch
,我哪里出错了?代码本身:
import upload from'../config/multer.config.js';
import { check, validationResult } from 'express-validator/check';
const validatorSignup = [
check('user_name').exists().isLength({ min: 4, max: 20 }),
...
];
router.post('/add', validatorSignup, (req, res) => {
try {
upload(req, res, function (err) {
if (err) {
return res.status(422).json({
err: err
});
}
})
const error = validationResult(req);
if (!error.isEmpty()) {
return res.status(422).json({
err: error.array()
});
}
} catch (err) {
console.log(err)
}
我可能不明白,但你有
validatorSignup
一个数组,你把它称为一个函数:它应该是这样的: