📅  最后修改于: 2023-12-03 15:23:46.156000             🧑  作者: Mango
使用 express-validator 可以很方便的验证输入字段中的数据是否符合要求。
安装 express-validator 可以使用 npm:
npm install express-validator
下面展示如何使用 express-validator 验证输入字段中的输入是否具有十六进制数字。
const { body, validationResult } = require('express-validator');
app.post('/example',
body('field_name').matches(/^[a-fA-F\d]+$/).withMessage('只能输入十六进制数字'),
(req, res) => {
// 验证输入数据是否通过规则
const errors = validationResult(req);
if (!errors.isEmpty()) {
// 如果不符合规则,则返回错误信息
return res.status(422).json({ errors: errors.array() });
}
// 如果符合规则,则继续处理请求
// ...
});
上述代码中的 body('field_name').matches()
方法表示要验证的字段名是 field_name
,并且这个字段必须符合正则表达式 /^[a-fA-F\d]+$/
,也就是只能包含十六进制数字。
如果验证未通过,则会返回 422 状态码和错误信息,否则会继续执行请求处理逻辑。
除了正则表达式之外,还有 其他的验证规则 可以使用,针对不同的数据类型和需求,可以选择对应的验证规则。
在 Node.js 开发中,使用 express-validator 可以快速有效地对输入数据进行验证。使用正则表达式可以对输入进行更细致的验证,从而确保输入数据的正确性。