快速验证器电子邮件规范化

问题描述

我的 Nodejs 项目使用 express-validator 6.9.2。但是当我在我的身份验证控制器中使用 normalizeEmail() 时,我的测试电子邮件之一“t.test@gmail.com”在 dB 中存储为“ttest@gmail.com”。 当我尝试使用 t.test@gmail.com 和 ttest@gmail.com 登录我的应用程序时,我能够成功登录。但是当尝试使用电子邮件 ttest@gmail.com 创建新用户时。它显示错误电子邮件已存在。如何标准化我的电子邮件并将其存储为 dB 中的“t.test@gmail.com”?

解决方法

在您传递验证器的选项中,您需要将属性 gmail_remove_dots 设置为 false。 Here 是文档。

check('email').normalizeEmail({gmail_remove_dots:false})