我有带有单个电子邮件字段的注册表单。当用户输入其电子邮件时,我需要发送一个注册链接。
我看过这个带有注册表单的 Node.js 示例。但它只有 sendWelcome 功能。
是否有发送注册电子邮件的 Node.js 应用程序示例?
我有带有单个电子邮件字段的注册表单。当用户输入其电子邮件时,我需要发送一个注册链接。
我看过这个带有注册表单的 Node.js 示例。但它只有 sendWelcome 功能。
是否有发送注册电子邮件的 Node.js 应用程序示例?
到目前为止我还没有看到这样的例子,但你的第二个问题是什么?您提供的示例很好地展示了如何发送电子邮件。另一种选择是使用这个包:
这似乎也很好地记录了如何发送电子邮件。
因此,我假设您想知道如何设置注册系统。一种方法是创建一个用于注册用户的表,该表具有e-mail和token列。E-mail很明显,token是一个随机生成的字符串(例如使用节点的crypto.randomBytes方法),它将作为链接的一部分发送给用户。输入链接后,您在数据库中搜索此令牌,如果找到,则继续注册。
需要注意的两件事:创建令牌时,请确保它不存在于数据库中。第二:使用valid_until列删除超过几个小时的标记是一个好习惯。
更新:
不幸的是,节点的 base64 导出不是 url 安全的。因此,这是获取我发现的安全令牌的最简单方法:
require('crypto').randomBytes(48, function(ex, buf) {
token = buf.toString('base64').replace(/\//g,'_').replace(/\+/g,'-');
});