私は検証のためにexpress-validatorを使用しています。私はデータベースにmongooseを使用していますが、それには検証機能も組み込まれています。どちらを使用すればよいか知りたいですか?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()メールが既に登録かいないされていない場合、それはとても検証するためにデータベースに照会し確認したカスタム検証メソッドです。上記のコードでは言及していませんが、データベース問合せがそれぞれに作成される複数のフィールドを検証する必要がある他の投稿リクエストはほとんどありません。
私は、上記のチェック方法をそれぞれ並列に実行することが可能かどうかを知りたかったので、それをより高速にすることができました。私は明らかに非同期のようにこれらを並列に実行するモジュールを使いたいと思うでしょう。私はすでにこれらのチェックメソッドが既に並行して実行されているかどうかを知りたいでしょうか?
これを理解してもらえますか?前もって感謝します。
を混合せずに、あなたが必要なすべてのデータと文字列の検証を行うことができるように非同期検証をサポートしていますか? async.parallel()を実行すると、同期しているのはなぜですか?私には、これらのバリデーションが行われた後にチェックするエラーを生成する関数だと思われます。私が正しければ、すべてのバリデーションが完了した後、パラレルを使用してエラーをチェックすることができます。 –
'async.parallel'は、Express-validator-callsが非同期呼び出し(I/O)を並列化するだけです。どのようにエラーを処理するかについては、[関連ドキュメント](https://github.com/ctavan/express-validator#validation-errors)をチェックしてください(*すべてのバリデーションが完了した後にも*行われます)。 – robertklep
これはエクスプレスバリデータまたはノードバリデータに問題がありますか?そのノードバリデーターは私がそれを修正することは非常に困難だと思うよりも?しかし、それが私が何かができることを望むよりもエクスプレスバリデーターでは。 –