我们如何在现有应用程序中实现邀请注册?

Posted

技术标签:

【中文标题】我们如何在现有应用程序中实现邀请注册?【英文标题】:How can we implement a registration by invitation in existing application? 【发布时间】:2019-11-30 06:16:35 【问题描述】:

我的应用程序支持管理员角色的正常注册和团队成员的邀请注册。管理员可以成功注册自己。登录功能也运行良好。我使用 jwt 生成令牌并使用 AuthGuards 保护私有路由。

在如何向用户发送邀请 URL 方面需要帮助? (nodemailer 已经配置并且正在工作)。更关心url生成。

有人可以帮助我吗? 应用程序后端在 Nestjs 中,前端在 Angular 8 中。 目前我正在通过邮递员测试api。

提前致谢, 阿金奇亚

【问题讨论】:

【参考方案1】:

1) 创建一个数据库实体invitation-token,其中包含一列token(随机生成的UUID,例如使用此uuid lib)。将其设置为 24 小时后自删除条目。 (例如 TTL 在 mongodb 中)

2) 创建一个端点,允许使用查询参数invitation-token 进行注册,例如/registration?invitation-token=Usa67Nsus78。仅当给定令牌存在于步骤 1) 中创建的表中时才允许注册。

3) 创建一个将邮件地址作为输入的invite 端点。它在invitation-token 表中创建一个新令牌,并向给定地址发送一封电子邮件,其中包含指向 2) 中端点的链接

【讨论】:

以上是关于我们如何在现有应用程序中实现邀请注册?的主要内容,如果未能解决你的问题,请参考以下文章

在 Silverlight 中实现登录和注册表单动画

如何在flutter中实现agora视频通话邀请

小程序中实现用户的登录与注册

小程序中实现用户的登录与注册

如何在 Azure AD B2C 中实现基于成员的访问?

iOS 5 在现有应用程序中实现带有情节提要的页面控制器