npm 包 @yantao0527/passport-wechat-enterprise 使用教程

阅读时长 6 分钟读完

前言

随着企业微信的流行,很多企业都开始使用企业微信来作为内部沟通的工具。由于需要接入外部系统,因此需要使用到企业微信的身份认证(企业微信网页授权)功能。@yantao0527/ passport-wechat-enterprise 是一个 npm 包,它可以帮助我们轻松地实现企业微信身份认证,接下来我们来一步步学习如何使用它。

安装

在开始使用之前,我们需要安装该 npm 包,使用以下命令可以完成安装:

配置

在使用之前,我们需要进行一些配置,首先在企业微信后台创建一个企业应用,获得以下信息:

  1. corpId
  2. agentId
  3. secret

然后我们需要在代码中进行配置,示例如下:

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

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

其中 WechatEnterpriseStrategy 是该 npm 包中的一个类,我们需要实例化它,并且在构造函数中进行配置,包含以下几个参数:

  • corpId : 企业的 corpId,必填
  • agentId : 应用的 agentId,必填
  • secret : 应用的 secret,必填
  • callbackURL : 回调 URL,必填

其中第二个参数是一个回调函数,当用户验证通过后,将会调用该函数,我们在该函数中可以获取到用户的一些信息,比如 accessToken、refreshToken、profile 等,可以在这个回调函数中处理用户信息。

集成

配置完成之后,接下来我们需要来集成这个认证模块,为了方便展示,下面我们演示一个以 Express.js 框架为例的集成。

首先,我们需要引入 passport 模块:

然后,我们需要在我们的 Express.js app 中使用 passport:

接下来,我们需要创建一个路由,这个路由接收从企业微信的回调过来的信息,并将其处理,示例代码如下:

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

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

其中第一个路由 /auth/wechat-enterprise 是用来接收企业微信的回调请求,然后进行身份认证的。第二个路由 /auth/wechat-enterprise/callback 是回调处理路由。

示例代码

下面是完整的示例代码:

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

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

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

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

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

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

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

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

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

总结

通过上述步骤,我们可以完成使用 @yantao0527/passport-wechat-enterprise npm 包进行企业微信身份认证的操作。其中需要注意的是,在配置过程中需要提供企业的集成信息,而集成信息是需要在企业微信的后台进行创建的。同时我们还演示了一个完整的 express 应用,展示了如何进行集成。

该 npm 包的使用可以方便开发者快速地集成企业微信身份认证,避免重复开发,提高开发效率。

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

纠错
反馈