我想建立使用express-validator使Node.js应用程序,这将让我验证请求参数在身体像这样 -调用对象的方法,该方法的名字只有字符串
req.checkBody('email_id', 'Invalid email ID!').notEmpty().isEmail();
现在我我试图构建一个大的JSON配置文件,该文件将包含应用程序中每个路由的所有字段及其规则(例如函数名称,例如isEmail()
)。我想写一个拦截每个请求的中间件,找到路由,从JSON文件中选择字段和验证规则,然后运行这些规则。该配置文件应该是这样的 -
{
"VALIDATION_RULES": {
"/createUser": {
"RULES": {
"email_id": {
"message": "Invalid email ID!",
"rules": ["notEmpty","isEmail"]
}
}
}
}
}
我可以看看快递验证器模块的出口得到所有可用的验证功能名称。如果他们是独立的函数调用,我会看到如何使用它的名称字符串调用该函数,如here和here所示。
如何挑选规则(notEmpty
或isEmail
),这些规则是JSON中的字符串,将它们转换为函数并链接到req.checkBody($field, $field.message)
?