前言
随着企业应用的普及,微信作为连接企业与用户之间的重要渠道之一,被越来越广泛地使用。开发人员需要集成微信 SSO 登录功能以实现更好的用户体验。 Passport-WorkWeixin 是社区中居多数人在 Node.js 中集成工作号登录微信的第三方包,它的使用方法非常简单、方便,我们可以轻松地使用它来快速实现企业微信的登录功能。
安装 passport-workweixin
passport-workweixin 是一个通过 npm 安装的包,我们可以通过下面的命令来进行安装:
npm install passport-workweixin --save
配置
先在企业微信管理端中开发->应用管理中创建应用,创建完后得到应用 id、secretKey 和回调地址。
-- -------------------- ---- ------- ----- -------- - ------------------- ----- ------------------ - --------------------------------------- ---------------- -------------------- ------- ----- ---- ---- -------- ---- --------- ------- ---- -------- ------------ ------------------------------------------------- ------ ------------------ -- --------------------- ------------- -------- ----- - ---------- --------- - ---
上面的代码中,我们通过 require 包引入了 Passport-WorkWeixin 包,并在 passport 中进行了相关的配置。其中,我们需要提供企业微信企业 ID、应用 ID、应用秘钥、回调地址以及获取用户信息的权限范围。如果没有设定回调地址,将抛出错误,所以一定要设置成功回调接口。
注册路由
-- -------------------- ---- ------- --------------------------- ----------------------------------- -- ------------------------------------ ----------------------------------- - ---------------- --- --- ------------- ---- - -- ---------- --------------- -------- ----- ------------------ ---
通过 Passport 集成微信登录时,我们需要创建路由路径。上述代码中获取 /auth/workweixin
时,将进入 passport.authenticate('workweixin') 这个方法,该方法会将用户转到企业微信平台的授权登录页面,输入用户名和密码验证成功后,将把用户带到回调地址。
登录测试
最后我们来综合验证一下是否成功了。启动服务后,打开浏览器,在地址栏中输入:
http://localhost:3000/auth/workweixin
然后会跳转到企业微信中进行身份验证,如果验证成功后,会跳转到我们设定的回调地址,也就是下面这个地址:
http://localhost:3000/auth/workweixin/callback
如果成功的话,我们就应该得到用户的信息。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60055f3781e8991b448dcc74