npm 包 Passport-LinkedIn 使用教程

Passport-LinkedIn 是一款基于 Node.js 平台的集成了 LinkedIn 登录授权功能的 npm 包。有了 Passport-LinkedIn,开发者可以轻松地通过编写少量代码,使得网站用户可以方便地使用其 LinkedIn 账户登录到您的应用中。

在本文中,我们将详细介绍 Passport-LinkedIn npm 包的使用方法,以及如何通过它实现 LinkedIn 登录授权。除此之外,我们还将编写一些示例代码,帮助读者更好地了解如何使用 Passport-LinkedIn 包。

安装

安装 Passport-LinkedIn 包需要 Node.js 6.x 或更高版本。使用以下命令安装:

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

Passport-LinkedIn 怎么用?

Passport-LinkedIn 是基于 Passport 身份验证框架的一个扩展包。在使用 Passport-LinkedIn 之前,需要先在应用中安装和配置 Passport 框架。如果您还没有使用过 Passport,可以先阅读 Passport 官方文档

要使用 Passport-LinkedIn,首先要对其进行初始化并配置 strategy。 Passport-LinkedIn 的初始化和配置方法如下所示:

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

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

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

在上面的代码中,LINKEDIN_CLIENT_IDLINKEDIN_CLIENT_SECRET 是在 LinkedIn 开发者中心 注册应用时生成的客户端 ID 和客户端密钥。LINKEDIN_CALLBACK_URL 是用于 OAuth 认证回调的 URL 地址。scope 则用于指定 OAuth 授权时需要获取的权限,在这个例子中我们使用了 'r_emailaddress' 和 'r_liteprofile' 两个权限。

当用户通过 LinkedIn 登录后,Passport-LinkedIn 会使用 callback 函数对该用户进行身份验证,验证成功后将其信息保存至数据库或返回新用户的信息。

在路由中设置 Passport

接下来,我们需要将 Passport 集成到我们的应用中。在路由中应该如下进行配置:

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

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

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

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

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

在上面的代码中,我们首先向 /linkedin 路由端点发出 GET 请求,该请求将被 Passport 重定向到 LinkedIn 授权页面。当用户完成授权后,LinkedIn 将用户重定向至 /linkedin/callback 路由端点,Passport 将在此处进行身份认证。如果认证成功,用户将被重定向到主页 Home 等位置。

示例代码

下面给出一个示例代码,展示如何将 Passport-LinkedIn 集成到您的 Express 应用中。在这个例子中,我们使用 Express.js 作为后端服务器,并使用 Passport-LinkedIn 进行用户登录认证。

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

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

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

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

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

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

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

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

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

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

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

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

在本示例中,我们定义了 /auth/linkedin 路由用于发出 GET 请求以进行身份验证。在验证时,Passport-LinkedIn 将自动跳转至 LinkedIn 授权页面,要求用户授权允许访问其 LinkedIn 账户中的某些信息。如果授权成功,Passport 会将用户重定向至 /auth/linkedin/callback 路由,身份验证将根据 callback 函数中的代码进行处理。

总结

以上是使用 Passport-LinkedIn npm 包执行 LinkedIn OAuth 认证的详细介绍。通过本文,您将学到如何在您的应用中集成 Passport-LinkedIn,使其用户可以方便地使用其 LinkedIn 账户进行登录。本文还包含了大量示例代码,可以帮助读者更好地了解如何集成 Passport-LinkedIn,从而更好地应用其功能。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/73899


猜你喜欢

  • npm 包 mochawesome 使用教程

    简介 Mochawesome 是一个基于 Mocha 测试框架的报告生成工具,生成的报告以 HTML 格式展现,含有详细的测试结果和统计信息。与 Mocha 官方提供的报告生成工具相比,Mochawe...

    5 年前
  • npm 包 medium-editor-markdown 使用教程

    本文将向您介绍如何使用 Node.js 包管理器(npm)包 medium-editor-markdown 实现富文本编辑器中的 Markdown 语法转换。 前言 随着互联网时代的到来,越来越多...

    5 年前
  • npm 包 cogs-test-helper 使用教程

    前言 在前端开发中,测试是非常重要的一项工作。测试可以帮助我们发现潜在的 Bug,提高代码的可靠性。其中,单元测试是最基础的测试,也是最常用的测试之一。在 JavaScript 中,我们常常使用 Mo...

    5 年前
  • npm包 cogs-transformer-uglify-js使用教程

    在前端开发中,我们经常需要压缩JavaScript代码以减小文件大小,以提高网页加载速度。npm包cogs-transformer-uglify-js是一个用于压缩JavaScript代码的工具,它使...

    5 年前
  • npm 包 node-optimize 使用教程

    在前端开发过程中,我们需要经常优化和压缩代码以提高网站的性能和用户体验。而 npm 包 node-optimize 就可以帮助我们自动地对 JavaScript、CSS 和图片等文件进行压缩和优化。

    5 年前
  • npm 包 raja-minify 使用教程

    npm 包 raja-minify 使用教程 随着互联网的高速发展,网页加载速度成为了一个越来越重要的问题。为了让网站更快地加载,我们需要对前端资源进行优化。其中,JavaScript 和 CSS 文...

    5 年前
  • npm包klassmer使用教程

    在前端开发中,我们经常需要使用JavaScript来管理类,从而实现代码的模块化和可维护性。而 npm 上的 klassmer 包,则可以帮助我们更加高效地实现JS类的定义和管理。

    5 年前
  • npm 包 qycloud-optimizer-uglify-js 使用教程

    前言 对于前端开发者而言,常常要处理大量的脚本文件,这给页面的加载速度和用户体验带来了不小的挑战。而压缩和混淆脚本文件则成为优化网页性能的重要手段之一。npm 包 qycloud-optimizer-...

    5 年前
  • npm 包 grunt-klassmer 使用教程

    概述 grunt-klassmer 是一个用于生成 JavaScript 代码类图的 grunt 插件。通过该插件,我们可以快速地生成任何 JavaScript 项目的类图,并用于代码的分析和设计。

    5 年前
  • npm 包 getdents 使用教程

    前言 在前端开发中,有时候我们需要遍历文件夹获取文件信息,这时就可以用到 getdents 这个 npm 包。在本文中,我将为大家详细介绍 getdents 的使用教程,并提供示例代码帮助大家更好地理...

    5 年前
  • npm 包 wu 使用教程

    在前端开发中,有很多常用的 npm 包能够帮助我们提高开发效率,其中 wu 是一个非常有用的工具,可以帮助我们迭代处理无限的可迭代对象。本文将为您介绍 wu 的使用教程,包含详细的使用方法、示例代码以...

    5 年前
  • npm 包 cp-remote 使用教程

    在前端项目开发中,我们经常需要将本地文件复制到远程服务器上,或将远程服务器的文件复制到本地。cp-remote 是一个非常方便的 npm 包,可以提供这种功能。本文将介绍如何使用 cp-remote。

    5 年前
  • npm 包 qlobber-fsq 使用教程

    前言 在前端开发中,我们经常需要处理字符串匹配问题。例如,在一个 Web 应用程序中,当用户访问某个 URL 时,我们需要根据 URL 参数来选择要显示的内容。这时,我们需要一个能够快速、准确地匹配字...

    5 年前
  • npm 包 ascoltatori 使用教程

    前言 在前端领域中,npm 是一个广泛使用的包管理器。npm 包 ascoltatori 是一个用于消息队列的工具包,以插件方式支持多种消息队列协议,可广泛应用于前后端通信、事件监听、分布式系统等场景...

    5 年前
  • npm 包 moving-average 使用教程

    在前端开发中,我们经常需要对数据进行分析和处理。其中,计算移动平均数是一种常用的方法。npm 包 moving-average 是一个方便易用的移动平均计算库,本篇文章将详细介绍如何使用它。

    5 年前
  • npm 包 qlobber 使用教程

    前言 在前端开发中,我们经常需要进行字符串匹配操作。在 JavaScript 中,我们可以使用正则表达式等方式来实现字符串匹配。但是,当我们需要将一个字符串与多个模板进行匹配时,正则表达式就会显得力不...

    5 年前
  • npm 包 mongo-clean 使用教程

    介绍 在使用 MongoDB 作为数据库时,数据量会随着时间的推移而不断增加,因此需要对数据库进行清理操作。MongoDB 提供了不同的清理方法,但是这些方法需要手动执行,使得清理过程变得麻烦和不方便...

    5 年前
  • npm 包 mosca 使用教程

    前言 在现代 Web 应用中,实时通信已经成为一个不可或缺的组成部分,而 MQTT 协议 也成为了 IoT 等领域的标准通信协议。 mosca 是一个用 Node.js 编写的 MQTT 服务器,是一...

    5 年前
  • npm 包 asset-frequency-graph 使用教程

    在前端开发过程中,我们需要时刻关注网站或应用的性能和加载速度。而对于网站中的静态资源(如图片、CSS、JS等),我们需要对它们的出现频率进行监测,以便进一步优化网站的加载速度。

    5 年前
  • npm 包 edp-package 使用教程

    在前端开发中,npm 是一个常用的包管理工具,你可以通过它来安装和管理各种开发依赖的包,edp-package 是一个基于 npm 安装包的命令行工具,它可以帮助你更方便地管理和打包静态资源文件。

    5 年前

相关推荐

    暂无文章