我使用express验证器进行验证。我使用猫鼬数据库,它也有内置的验证。我想知道我应该使用哪一个?快速验证器中的验证
我也想知道express-validator中的验证是否平行。拿这个代码,例如:
req.checkBody('email', 'Invalid email').notEmpty().isEmail().isUnique();
req.checkBody('password', 'Invalid possword').notEmpty().len(8, 30);
req.checkBody('first_name', 'Invalid first_name').notEmpty().isAlpha();
req.checkBody('last_name', 'Invalid last_name').notEmpty().isAlpha();
req.checkBody('dateofbirth', 'Invalid dateofbirth').notEmpty.isDate();
isUnique设置()是来检查,如果电子邮件尚未注册与否,查询数据库来验证这样一个自定义的验证方法。虽然没有在上面的代码中提到,但我也没有几个其他的post请求,我需要验证多个字段,其中每个字段将在其中进行数据库查询。
所以我想知道它是否可能并行运行上述每个检查方法,因为这会使它更快,并且也会让我更喜欢节点。我显然希望使用一个模块来并行运行这些模块,比如async。我还想知道这些检查方法是否已经平行运行?
请帮我弄清楚这一点?提前致谢。
为什么我不能让它们并行工作?我的意思是如果它做async.parallel(),那么为什么它仍然是同步?在我看来,它们是创建错误的函数,在完成这些验证后我们会检查这些错误。如果我是正确的,那么我们可以使用并行并在所有验证完成后检查错误。请澄清我的probs –
'async.parallel'只会并行异步调用(I/O),而Express-validator-调用不是。请查看[相关文档](https://github.com/ctavan/express-validator#validation-errors)了解如何处理错误(在完成所有验证后也完成)。 – robertklep
这是express-validator或node-validator的问题吗?如果它的节点验证器比我认为它很难修复它?但如果它与表达验证者相比我希望能做些什么。 –