【发布时间】:2016-01-13 07:16:45
【问题描述】:
我正在使用 node 编写 rest API,表达 web 模块。对于验证,我使用 express-validator npm。我想在密码字段上应用一些验证规则。
如何使用 express-validator 实现它?
我想申请密码的验证规则为:
- 分钟 8 个字符长。
- 至少一个大写字母。
- 至少一个小写字母。
- 至少有一个特殊字符。
我在this 链接中读到有一个名为 regex() 的函数可用。所以我尝试了它,但根本不工作。
我的做法:
req.check("password", "Password should be combination of one uppercase , one lower case, one special char, one digit and min 8 , max 20 char long").regex("/^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])[0-9a-zA-Z]{8,}$/", "i");
错误
在express-js中,他们列出了所有方法,但没有找到解决我问题的方法/技巧。
【问题讨论】:
-
根据我的研究,我发现可以使用 express-validator 的自定义验证功能。但是我需要定义 4 个函数来检查它还是有任何正则表达式模式函数可用??
-
您的问题并未显示您的任何研究工作。你要求人们为你做你的工作。您随后找到了
customValidators选项,但仍不清楚您自己尝试了什么以及卡在哪里。查看文档,检查正则表达式对我来说似乎微不足道。 -
github.com/mlabieniec/complexity 这有一个很好的解决方案来构建正则表达式
标签: regex node.js validation express