企业微信H5_身份验证,PC网站企业微信扫码授权登录

文章目录

  • 一、扫码登录配置
    • 1. 企业微信扫码登录接入流程
    • 2. 企业微信扫码登录接入流程拆解
    • 3. 开启网页授权登录
  • 二、实战演练
    • 2.1. 用户发起流程
    • 2.2. 构造授权链接
    • 2.3. 显示扫码二维码
    • 2.4. 用户扫码
    • 2.5. 用户确认登录
    • 2.6. 回调前端携带code
    • 2.7.携带code请求后端
    • 2.8.接收code获取用户信息
    • 2.9.获取用户id
    • 2.10. 获取用户详情
    • 2.11. 用户详情展示
  • 三、源码分享
    • 3.1. 后端源码
    • 3.2. 前端源码
一、扫码登录配置

官网文档: https://developer.work.weixin.qq.com/document/path/91025

1. 企业微信扫码登录接入流程

2. 企业微信扫码登录接入流程拆解

步骤如下->
①用户->访问->前端

②前端->构造登录链接请求->后端API获取企业微信扫码登录链接

③后端API->返回生成REDIRECT_URI及app_id等信息的企业微信oauth授权链接->前端重定向->企业微信网站展示扫描二维码

④用户->使用微信扫码并确认授权->企业微信网站

⑤企业微信网站->返回用户登录成功->用户

⑤企业微信网站->携带code回调->前端

⑥前端->携带code请求后端API->请求

⑦后端API->请求企业微信API->获取用户简要信息->后端API

⑧后端API->携带userid请求企业微信API->获取用户详细信息->后端API

⑨后端API->携带详细信息响应->前端

3. 开启网页授权登录

企业微信管控台配置
企业微信管控台:https://work.weixin.qq.com/wework_admin/frame#contacts
登录 企业管理端后台->进入需要开启的自建应用->点击 “企业微信授权登录”,进入如下页面



然后点击 “设置授权回调域”,输入回调域名,点击“保存”。
要求配置的授权回调域,必须与访问链接的域名完全一致

二、实战演练

真实场景,应该是用户点击某个链接或者按钮触发扫码流程
官网文档: https://developer.work.weixin.qq.com/document/path/91025

2.1. 用户发起流程

①用户->访问->前端
②前端->构造登录链接请求->后端API获取企业微信扫码登录链接

2.2. 构造授权链接

③后端API->返回生成REDIRECT_URI及app_id等信息的企业微信oauth授权链接->前端重定向->企业微信网站展示扫描二维码


2.3. 显示扫码二维码

④用户->使用微信扫码并确认授权->企业微信网站

2.4. 用户扫码

⑤企业微信网站->返回用户登录成功->用户

2.5. 用户确认登录

2.6. 回调前端携带code

⑤企业微信网站->携带code回调->前端

2.7.携带code请求后端

⑥前端->携带code请求后端API->请求

2.8.接收code获取用户信息

⑦后端API->请求企业微信API->获取用户简要信息->后端API

2.9.获取用户id

⑧后端API->携带userid请求企业微信API->获取用户详细信息->后端API

2.10. 获取用户详情

⑨后端API->携带详细信息响应->前端

2.11. 用户详情展示


{"errcode": 0,"gender": "1","is_leader_in_dept": [0],"direct_leader": [],"userid": "ZeXin","thumb_avatar": "http://wx.qlogo.cn/mmhead/Q3auHgzwzM4de1RtaqgB6CTZ1mOMTFK9JH8brF8FZlqJP20rcuyTFA/132","enable": 1,"qr_code": "https://open.work.weixin.qq.com/wwopen/userQRCode?vcode=vce2609ebe698837fd","alias": "泽昕","department": [1],"biz_mail": "zexin@zxkjgfyxgs10.wecom.work","email": "gblfy002@163.com","order": [0],"isleader": 0,"address": "北京市通州区华馨园6楼号","mobile": "13396492261","errmsg": "ok","telephone": "88888888","avatar": "http://wx.qlogo.cn/mmhead/Q3auHgzwzM4de1RtaqgB6CTZ1mOMTFK9JH8brF8FZlqJP20rcuyTFA/0","hide_mobile": 0,"main_department": 1,"token": "tobdeveyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ0b2JkZXYiLCJ1c2VyX2lkIjoiWmVYaW4iLCJ1c2VyX25hbWUiOiLms73mmJUiLCJ1c2VyX3R5cGUiOjAsImlhdCI6MTY0NTk1MDkwMiwiZXhwIjoxNjQ2NTU1NzAyfQ.aaIP3AOEA3GyeZwROVfVVjPRPD77NC_FtcbTj8riZTA","name": "泽昕","extattr": {"attrs": []},"position": "项目经理","external_profile": {"external_attr": [],"external_corp_name": ""},"status": 1
}
三、源码分享
3.1. 后端源码

后端:https://gitee.com/gblfy/qywx-inner-java

3.2. 前端源码

前端:https://gitee.com/gblfy/qywx-vuejs
ps://gitee.com/gblfy/qywx-vuejs)

企业微信H5_身份验证,PC网站企业微信扫码授权登录相关推荐

  1. 网站上做企业微信扫码授权登录怎么做?(超详细教程)

    企业微信已经搞了这一套完整的教程! https://developer.work.weixin.qq.com/tutorial/detail/56 第1步:企业微信自建应用 第2步:浏览企业微信开发文 ...

  2. 企业微信+esaywechat 扫码授权登录

    企业微信+esaywechat 扫码授权登录 相关 相关 这里用的是 Yii2 框架. 安装easywechat: composer require overtrue/wechat:~4.0 -vvv ...

  3. 微信pc端网站应用扫码授权登录

    这是官方的文档 对接之前至少要先看下流程图 效果:用户点击微信登录跳出一个二维码,用户扫码授权后登录进去 1. 2. 需要做的事情 1.需要在微信开放平台上面注册账号,并认证企业,创建网站应用 2.认 ...

  4. 网站微信扫码授权登录

    1.首先准备工作 网站应用微信登录是基于OAuth2.0协议标准构建的微信OAuth2.0授权登录系统. 在进行微信OAuth2.在进行微信OAuth2.0授权登录接入之前,在微信开放平台注册开发者帐 ...

  5. 基于Spring Boot实现电脑端网页微信扫码授权登录方式一(附带完整源码)

    简介 电脑端微信网页扫码授权登录有2种方式: 第一种:基于微信公众号,单独获取登录二维码扫码,然后扫码登录,程序控制跳转逻辑,例如CSDN: 第二种:基于微信开放平台,跳转到微信二维码页面进行扫码登录 ...

  6. PHP小程序码扫码登录网站,WeAuth微信小程序实现PC网站扫码授权登录

    目前微信扫码登录的实现有以下2种方式: 1.微信服务号扫码网页授权登录 2.微信开放平台Oauth2.0授权登录 以上2种方式少不了微信认证,都是需要交300元认证后才可以获得开发能力.所以我就想到了 ...

  7. 基于微信公众号(服务号)实现扫码自动登录系统功能

    微信提供了两种方法都可以实现扫描登录. 一种是基于微信公众平台的扫码登录,另一种是基于微信开放平台的扫码登录. 两者的区别: 微信开放平台需要企业认证才能注册(认证费用300元,只需要认证1次,后续不 ...

  8. 微信公众号扫码授权登录思路

    引言 上学期研究了一下微信登录相关内容,也写了两三篇笔记,但是最后实际登录流程没有写,主要因为感觉功能完成有所欠缺,一直也没有好的思路:这两天我又看了看官方文档,重新构思了一下微信公众号登录相关的内容 ...

  9. C# 微信扫码授权登录

    1.创建网站应用 1.1去微信开放平台申请网站应用. 1.2申请 审核通过后可获得 AppID和AppSecret. 1.3并且申请微信登录接口. 2.生成二维码和获取code 官方文档:https: ...

最新文章

  1. python_day10
  2. python socket.socket()函数 套接字详解及TCP、UDP程序示例(粘包等)
  3. C 程序更有效率的 10 种方法
  4. 深圳本地网店代运营公司
  5. SAP License:别闹了,这些都不是数字化转型
  6. 预训练的ONNX模型
  7. 北邮 复习 软件工程_软件工程专业考研——上交、北邮、南大对比分析
  8. 微软ReportViewer(rdlc)发布时所需要的动态库(vs2010)
  9. Jzoj5231 序列问题
  10. 415 Add Strings 字符串相加
  11. iOS:segment对齐原则
  12. JavaParser使用指南
  13. OpenCV学习——图像二值化处理及二维傅里叶变换
  14. nrg文件是什么?nrg文件格式详细介绍
  15. shiro 自定义FormAuthenticationFilter,记住我
  16. 什么情况下选用mysql_在MySQL中,‘%’可以用在什么情况下?
  17. 什么是数字图书馆——What is Digital Library?
  18. 软件研发管理最佳实践(2012-10-20 深圳)
  19. 【学习记录2】数组里的字符串转换成数字或者把数字转换成字符串
  20. laragon 之Nginx

热门文章

  1. 杜克大学教授:提高学术写作水平的10条建议!
  2. 全面取消校园全封闭管理!这个省发通知了!那北京呢?
  3. 继北大“鸿hao之志”后,清华出现“热列欢迎”…
  4. lucene6.0 查询语句设置关键字boost值
  5. 获国际架构顶会ATC2021最佳论文!Fuxi2.0去中心化的调度架构详解
  6. 代码评审中的代码协同
  7. Python 命令行库的大乱
  8. 连续两年入选Gartner公共云容器,阿里云在边缘容器方面做了什么?
  9. 离线计算中的幂等和DataWorks中的相关事项
  10. AliOS Things KV组件的写平衡特性 1