Feathers 认证增强 - Email认证

https://hackernoon.com/setting-up-email-verification-in-feathersjs-ce764907e4f2

在过去几年的网络开发中,我偶然发现了FeathersJS项目,并且到目前为止真的非常喜欢它。它提供了许多开箱即用的功能,如websockets和身份验证,这使得它成为像Firebase这样的实时后端的一个很好的替代品,成本只是其中的一小部分。很少有节点框架做得那么多,配置如此之少,我唯一看错的是它没有被广泛使用,所以让我开始说明为什么你应该使用FeathersJS作为你的API后端框架。

使用feather-cli为您的应用程序提供支持,只需一行代码即可为您提供开箱即用的webockets。使用第二行代码添加身份验证,包括Facebook,Google和GitHub等所有公众的收藏。第三行代码连接到几乎所有这个星球上的单一数据库。例如MongoDB或所有SQL数据库.Killer与Vue和React的集成实现了对前端的实时更新。

由于这个销售方式不受欢迎,想要从原型设计转向实际的生产方案,我最近要求开始发送验证电子邮件。似乎有一个名为feathers-authentication-management的模块。浏览这个库的文档很有挑战性,因为有很多要一次处理。有一个教程和Jon Paul Miles的回购,但它看起来基于旧版本的羽毛并且有许多外部依赖,如Pug,Lodash,Mongoose等。本文试图写下如何获取验证电子邮件基于最新版本的FeathersJS v3工作,没有任何其他依赖项。

本教程的目标是拥有一个干净的羽毛应用程序,该应用程序能够通过REST处理用户帐户创建请求,向用户发送验证链接并以最简单的方式处理该链接的单击。我们将实施这一行动,让您实施密码重置或帐户更改等其他操作。
本教程假设您已经掌握了如何使用羽毛框架的核心和一般Web开发实践的一些知识。

一切如何运作

我们要创建的是让用户验证其电子邮件地址的流程。具体如下:

用户在羽毛app上创建一个帐户服务器将一个字段isVerified添加到数据库中的用户对象并将其设置为false服务器为用户创建验证令牌用户会收到一封包含客户端链接的电子邮件,其中令牌作为参数用户单击链接并在访​​问客户端时此令牌被发送回服务器服务器将用户对象上的isVerified字段设置为true用户从您的真棒应用程序中获取所有超级用户

所以粗略地说,我们需要做以下事情才能使其发挥作用。

我们需要生成一个羽毛应用程序我们需要创建一些东西来发送电子邮件我们需要安装身份验证管理包来生成令牌并处理用户对象上的额外字段我们需要创建钩子以使它们一起工作我们需要编写代码处理点击链接的简单客户端我们需要保护用户服务的某些部分,以确保用户通过新的身份验证管理路由进行通信

所以让我们开始吧。

你可能感兴趣的:(Feathers 认证增强 - Email认证)