npm 包 @joewitt99/passport-linkedin-oauth2 使用教程

阅读时长 6 分钟读完

在前端开发过程中,经常会涉及到使用第三方身份验证服务来实现用户认证功能。LinkedIn 是许多公司和开发者广泛使用的一种认证方式,而 @joewitt99/passport-linkedin-oauth2 是一个实现了 LinkedIn OAuth2 认证策略的 npm 包,本文将详细介绍如何使用它来实现 LinkedIn 登录功能,并提供示例代码以供参考。

1. 安装

在使用 @joewitt99/passport-linkedin-oauth2 前,需要先安装并配置 Passport.js,具体安装方法可参考 Passport 官方文档

然后,可以通过 npm 安装 @joewitt99/passport-linkedin-oauth2:

2. 创建 LinkedIn 应用

在使用 @joewitt99/passport-linkedin-oauth2 前,需要先在 LinkedIn 开发者平台创建应用并获取 API Key 和 Secret Key。

具体步骤如下:

  1. 前往 LinkedIn 开发者平台,点击“创建应用”按钮。
  2. 填写应用名称、公司名称和应用描述等信息,并选择“认证类型”为“OAuth 2.0”。
  3. 在“默认重定向 URL”中填写在认证成功后需要跳转的 URL。
  4. 获取生成的 API Key 和 Secret Key。

3. 配置 Passport 使用 LinkedIn 认证策略

首先,在 Node.js 代码中引入需要的库:

然后,用 LinkedInStrategy 配置 Passport 使用 LinkedIn 认证策略:

其中的参数说明如下:

  • clientID:在 LinkedIn 开发者平台创建应用时获取的 API Key。
  • clientSecret:在 LinkedIn 开发者平台创建应用时获取的 Secret Key。
  • callbackURL:用户身份验证后需要跳转的 URL。
  • scope:LinkedIn API 的权限范围。

4. 集成 LinkedIn 登录功能

在实现 LinkedIn 登录功能前,需要先完成以下步骤:

  1. 在前端添加一个链接或按钮,将其点击事件指向 LinkedIn 授权页面。
  2. 在 LinkedIn 授权页面上,用户需要授权访问当前应用的相关权限。

用户点击链接或按钮后,将跳转到 LinkedIn 授权页面。代码示例:

然后,在服务器端添加路由处理程序,用于处理来自 LinkedIn 的授权回调请求和完成用户登录。

这段代码的具体作用如下:

  1. /auth/linkedin 路由处理程序将调用 Passport 使用 LinkedIn 认证策略,将用户重定向到 LinkedIn 授权页面。
  2. LinkedIn 授权成功后,将重定向到 /auth/linkedin/callback,该路由处理程序将会调用 Passport 使用 LinkedIn 认证策略,完成用户登录并跳转到登录成功后的页面。

5. 示例代码

完整的示例代码如下:

-- -------------------- ---- -------
----- ------- - -------------------
----- -------- - --------------------
----- ---------------- - --------------------------------------------------------

----- --- - ----------
----- ---- - -----

-- -------- -- -------- ----
---------------- ------------------
  --------- -----------------
  ------------- --------------------
  ------------ -----------------------------------------------
  ------ ------------------ -----------------
-- ------------- ------------- -------- ----- -- -
  -- ------------
----

-- -- -------- ----
------------------------- -----------------------------------

-- -- -------- ------
---------------------------------- ---------------------------------- ----- ---- -- -
  -- -------------------
  ------------------
---

---------------- -- -- -
  ------------------- --------- -- ---------------------------
---

6. 总结

本文介绍了如何使用 @joewitt99/passport-linkedin-oauth2 实现 LinkedIn 登录功能,涉及到安装、配置以及集成等方面,同时提供了示例代码以供参考。当然,随着你在实际开发中的需要,还可以进行更多的个性化配置和扩展,从而达到更好的开发效果和用户体验。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/87342