当前位置: 首页 > 面试题库 >

如何用Express / Node确认电子邮件地址?

丌官承
2023-03-14
问题内容

我试图为用户建立确认电子邮件地址,以验证他们的电子邮件是真实的。我应该使用哪个软件包来确认用户的电子邮件地址。到目前为止,我使用猫鼬和快递

代码示例

var UserSchema = new mongoose.Schema({
    email: { type: String, unique: true, lowercase: true }
    password: String
});

var User = mongoose.model('User', UserSchema);

app.post('/signup', function(req, res, next) {
   // Create a new User
   var user = new User();
   user.email = req.body.email;
   user.password = req.body.password;
   user.save();
});

在app.post代码中,如何确认用户的电子邮件地址?


问题答案:

您要找的是“帐户验证”或“电子邮件验证”。有很多Node模块可以执行此操作,但是原理如下:

  • 您的用户模型应具有默认情况下的active属性false
  • 当用户提交有效的注册表单时,创建一个新用户(最初active将是谁false
  • 使用加密库创建一个长的随机字符串(通常是128个字符),并参考用户ID将其存储在数据库中
  • 将电子邮件发送到提供的电子邮件地址,并将哈希值作为指向服务器路由的链接的一部分
  • 当用户单击链接并点击您的路线时,请检查URL中传递的哈希值
  • 如果数据库中存在哈希,请获取相关用户并将其active属性设置为true
  • 从数据库中删除哈希,不再需要它

您的用户现已验证。



 类似资料:
  • 我使用的是firebase javascript API。 也不起作用

  • 此API适用于移动应用程序。目标是让用户在注册时确认电子邮件。当用户注册时,会生成一个确认链接并通过电子邮件发送。我在MVC项目中也采用了同样的方法,效果很好,但在Web API项目中,它似乎无法实现。现在,当用户单击该链接时,应该点击相应的动作方法并完成任务。 唯一的问题是,ConfirmEmail操作方法在单击确认链接时没有被触发,尽管它看起来很好。 以下是可能有帮助的主要配置 MVC服务配置

  • 我做了一个AWS Cognito用户池,没有电子邮件或电话属性(只有用户名和密码),MFA关闭了。然而,当新用户注册时,他们无法登录,直到他们的帐户得到确认。当然,这是不可能的,因为没有电子邮件或电话发送校验码。 我如何不需要用户确认,或者在注册时自动确认用户? 下面是Cognito用户池中相关选项卡的一些屏幕截图:

  • 主要内容:创建用户,登录,注销在本章中,我们将向您介绍如何使用Firebase电子邮件/密码身份验证。在开始之前,需要设置登录方法,参考以下图所示 - 点击设置登录方法,然后选择电子邮件地址/密码,打开启用并保存,如下图所示 - 创建用户 要验证用户,可以使用方法。 示例 让我们来看看下面的一个例子。参考代码 - 接下来,您可以检查Firebase仪表板中的数据库,并查看用户是否已创建成功。如下所示,已经创建了一个用户账号 -

  • 问题内容: 有谁知道如何在Swift中验证电子邮件地址?我发现此代码: 但我无法将其翻译为Swift。 问题答案: 我会用: 对于低于3.0的Swift版本: 对于低于1.2的Swift版本: