npm 包 egg-passport-weibo 使用教程

阅读时长 4 分钟读完

在使用 Node.js 开发 Web 应用的过程中,我们常常需要使用第三方平台的授权登录,如微博、微信等。而 egg-passport-weibo 是一个基于 egg.js 的鉴权插件,可以帮助我们快速地实现微博授权登录功能。本文将对该 npm 包的使用进行详细介绍。

安装 egg-passport-weibo

首先,我们需要安装 egg-passport-weibo 这个 npm 包。在项目根目录下执行以下命令即可:

配置插件

接下来,在项目的 config/plugin.js 文件中添加如下配置:

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

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

这样就启用了 egg-passport 和 egg-passport-weibo 插件。

配置微博开放平台

在使用 egg-passport-weibo 插件之前,我们需要先注册一个微博开放平台应用,并获取该应用的 App Key 和 App Secret。

然后,在项目的 config/config.default.js 中添加如下配置:

实现授权登录

完成了上述配置后,我们就可以开始实现授权登录功能了。

首先,在路由文件中添加如下代码:

这样就会在 /passport/weibo 路径下注册一个路由,用于处理微博授权登录请求。

接着,在控制器文件中添加如下代码:

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

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

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

其中,weibo 方法用于渲染登录页面,weiboCallback 方法用于处理授权登录回调。在 weiboCallback 方法中,我们通过 app.passport.authenticate 方法进行鉴权,并将鉴权后的用户信息赋值给 ctx.state.user 对象,最后重定向到首页。

最后,在模板文件中添加如下代码:

这样,用户就可以点击“微博登录”按钮,跳转到微博授权页面进行授权登录了。

总结

本文介绍了 npm 包 egg-passport-weibo 的使用方法,详细讲解了插件的安装和配置及授权登录实现方法。希望对大家在开发过程中处理第三方平台授权登录有所帮助。

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

纠错
反馈