随着现代 Web 应用的普及,用户登录系统已成为一个基础性的功能,因此各种身份验证 (Authentication) 方案也应运而生,其中 OAuth2 已成为了一个流行的解决方案。如果想要在自己的 Egg.js 项目中快速与 GitHub OAuth2 集成,那么可以考虑使用 egg-born-module-a-authgithub npm 包。
安装
可以终端中,运行以下命令完成安装:
- --- ------- ---------------------------- ------
配置
为了使用 GitHub OAuth2,需要在 GitHub Developer Settings 中注册一个 OAuth Application,并获取到 Client ID 和 Client Secret。
接着在 Egg.js 的配置文件中,添加以下配置:
-- ------------------------ ------------------ - - -------- - --------- - ---------- ----------------- -------------- --------------------- - - -
其中 myclient
是你自己定义的一个客户端,后面在控制器中使用。
使用
首先创建一个控制器,代码如下:
-- ------------------------ ----- ---------- - -------------------------- ----- ---------------- ------- ---------- - ----- ------- - ----- - ---- --- - - ----- ----- --- - - ------- ----------- ------------ ------------------ - ------------------- -- ----- --- - ----- ----------------------------------------- ------------------ - ----- ---------- - ----- - --- - - ----- ----- ---- - ----- --------------------------------- -------- - ----- - - -------------- - -----------------
接着,将上面创建的控制器路由到服务器:
-- ------------- -------------- - --- -- - ----- - ------- ---------- - - ---- --------------------- ------------------------- ------------------------------ ---------------------------- --
最后,在命令行中运行 egg-bin dev
命令,启动服务器并访问 http://localhost:7001/signin
即可跳转到 GitHub 登录界面进行登录。
指导意义
本文介绍了如何使用 egg-born-module-a-authgithub npm 包在 Egg.js 项目中快速与 GitHub OAuth2 集成,包括了安装、配置和使用的具体步骤,并提供了完备的示例代码,希望可以帮助到有需要的开发者。
同时,身份验证功能不仅仅存在于 GitHub OAuth2 这样的身份验证方案中,可以根据自己的需求选择不同的身份验证方案,例如国内 OAuth2 服务商 Authing 等,在 Egg.js 项目中集成身份验证方案也是同样的易如反掌。
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/5eedc248b5cbfe1ea0612051