我使用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的問題嗎?如果它的節點驗證器比我認爲它很難修復它?但如果它與表達驗證者相比我希望能做些什麼。 –