我正在使用express-validator
,当我遇到我使用规范化电子邮件验证电子邮件,而注册,所以我存储规范化的电子邮件到服务器。
验证码:
router.post(
"/signup",
[
check("name").not().isEmpty(),
check("email").normalizeEmail().isEmail(),
check("password").isLength({ min: 6, max: 15 }),
],
userController.signupUser
);
输入电子邮件:[[email protected]](https://stackoverflow.com/cdn-cgi/l/email-protection)
标准化电子邮件:[[email protected]](https://stackoverflow.com/cdn-cgi/l/email-protection)
(存储在db中)
现在的问题是,当工作登录输入电子邮件不匹配,并显示无效的凭据。
3条答案
按热度按时间8xiog9wr1#
您只需要在中间件中的验证链中传递
normalizeEmail ()
内部的选项:svdrlsy42#
经过研究和观察,我注意到注册时使用的代码可以在登录时用于规范化电子邮件,我只需要添加:
添加后的电子邮件转换为规范化的一个,可以直接从请求使用。
ep6jt1vc3#
您不能删除任何
. or _
,因为它是用户电子邮件的一部分。Here和验证电子邮件地址的示例