目录

一、网页授权

1、第三方应用扫码绑定公众号

2、微信端授权绑定第三方账号,一次授权后续免登录


一、网页授权

微信开发者文档

这里的两个业务场景
主要是通过静默授权实现,该授权链接只能在微信客户端打开,主要是依赖微信授权链接中的回调url来满足业务场景。

1、第三方应用扫码绑定公众号

前端首先根据微信的网页授权链接(回调页需要带上当前用户id)生成一个二维码,微信扫码后会自动去请求该链接,然后跳转到回调页面(该页面可展示基本企业信息以及当前用户信息,然后增加一个绑定按钮即可),点击绑定时将获得的code和userId传给后端,后端进行绑定。

2、微信端授权绑定第三方账号,一次授权后续免登录

大概有两种方案实现

第一种是通过前端进行跳转页面实现(会存在多次跳转的情况出现)

点击链接:如果此时后端返回token过期或没有,向微信授权链接(回调url为应用登录页)发送请求,进到登录页后调用后端根据微信返回的code查询token接口,后端先根据code查询当前微信用户的openid,然后看是否已与应用账号进行绑定,如绑定直接计算token返回;前端判断如果有token,此时则跳转到应用首页,反之留在登录页;若留在登录页,在调用登录验证完成接口之后,前端再次调用微信授权链接(回调url为应用首页),进到首页后前端调用后端根据微信返回的code绑定当前用户即可,这样以后只要在同一个微信号下面点开链接均无需登录,实现一次授权后续免登录。

第二种是通过后端进行重定向实现(本来采用该方式进行开发测试,由于环境映射问题以及一些客观原因放弃调试,改为第一种,该方式在跳转时用户完全无感知)

点击链接:不管什么链接,前端直接向微信授权链接(回调url为后端的重定向接口)发送请求,后端在重定向接口中根据微信返回的code获取openid,然后判断是否已有绑定账号,若有则重定向到首页同时带上token,若无则重定向到登录页;后续登录页操作与第一种类似。

该方案没有经过调试,我唯一不确定的就是后端在重定向到首页时,应该也会唤醒正常进入到首页会触发的一系列接口吧?理论上来说会,由于当时映射问题没经过测试,如果嫌跳转次数太多可以尝试下该方案。

微信公众号授权绑定第三方应用相关推荐

  1. 【解决】小程序|微信公众号授权给第三方平台时报“没有绑定公众号”

    如果第三方平台没有全网发布时,要在授权账号公众号列表里面填写的原始ID.如果是测试小程序,也要加上小程序的原始ID. 实操验证的经验. 完整小程序第三方授权操作流程: 1.第三方平台需要设置小程序权限 ...

  2. 微信公众号授权给第三方平台时报“没有绑定公众号”

    为什么第三方平台扫码授权没有显示公众号选项??? 如下图,左边是不正常的,右边是正常的. 做第三方平台开发的人比较少,此问题遇到的人也比较少.但是需要的时候基本搜不到. 目前发现其中一个导致此问题的是 ...

  3. ASP.NET之MVC 微信公众号授权给第三方平台的技术实现流程一(获取第三方平台access_token)...

    "出于安全考虑,在第三方平台创建审核通过后,微信服务器每隔10分钟会向第三方的消息接收地址推送一次component_verify_ticket,用于获取第三方平台接口调用凭据". ...

  4. 微信公众号授权登录(asp.net + angular)

    微信是时下最火的,上面有数以亿计的用户,如果能接入微信将大大减低注册门槛,当然,接入微信登录是有门槛的.微信登录一般有两个,一个是微信开放平台授权登录,一个是微信公众号授权登录,两者都需要认证才可以继 ...

  5. 小程序或者公众号授权给第三方平台流程

    步骤1:第三方平台方获取预授权码(pre_auth_code) 预授权码是第三方平台方实现授权托管的必备信息. 该API用于获取预授权码.预授权码用于公众号或小程序授权时的第三方平台方安全验证. 接口 ...

  6. 微信登录(微信公众号授权)的开发(详解)

    1.UnionId和OpenId 微信登录最重要的两个返回信息,一个是UnionId,一个是OpenId.两者之间有着必然的联系. 首先,先来理一下微信开放平台的架构.开发微信登录,必须有一个开放平台 ...

  7. H5 微信公众号 授权登录 前后端分离篇(资料准备+前端01)

    实现微信公众号授权登录,很简单,但是注意的地方要细心,小伙伴们跟着我的思路一起实现吧! 文章目录 一.帐号申请 1. 正式账号 2. 测试帐号 二.微信文档 2.1. 文档主页 2.2. 授权流程 2 ...

  8. 微信登录 sdk 服务器,微信登录(微信公众号授权)的开发(详解)——两三行代码的事,何必呢...

    新版重构的SDK已经开始在写了,具体的使用方法参考 新版重构的SDK已经开始在写了,具体的使用方法参考 新版重构的SDK已经开始在写了,具体的使用方法参考 新版重构的SDK已经开始在写了,具体的使用方 ...

  9. 【SpringBoot学习】46、SpringBoot 集成 Uniapp 实现微信公众号授权登录

    文章目录 一.公众号环境搭建 二.Spring Boot 集成微信公众号 1.application.yml 微信配置 2.控制层接口 三.Uniapp 实现授权登录 一.公众号环境搭建 本篇文章使用 ...

最新文章

  1. 1. 编程规范和编程安全指南--python
  2. C# 读取CSV和EXCEL文件示例
  3. Windows Server 2008 R2模板机制作(VMware Workstation)
  4. 使用Zookeeper实现leader选举
  5. 笨笨图片批量下载器 V0.3 beta[C# | WinForm | 正则表达式 | HttpWebRequest | Async异步编程] new...
  6. Zabbix中文模式:图片下面的字符乱码
  7. 信息学奥赛一本通 1151:素数个数
  8. Linux下.o,.so,.a,.la文件
  9. ssh scp不用输入密码
  10. mysql 数据库中根据当前系统时间,取前后几秒 几分钟 几小时 几天
  11. python3-爬取cnnvd漏洞库
  12. 非香农类信息不等式_ICLR 2020 | 北大图灵班满分论文:基于计算约束下有用信息的信息论...
  13. 如何修改电脑的ip地址
  14. STM32F103和STM32F401的ADC多通道采集DMA输出
  15. java计算机毕业设计网上商城系统源码+系统+数据库+lw文档+mybatis+运行部署
  16. echarts立体柱状图
  17. 安卓平板“枯木回春”,vivo能分杯羹吗?
  18. 电脑连接上wifi,但是无法打开网页上网,小记
  19. 华为服务器修改管理网口,怎么设置华为服务器管理口
  20. 深入浅出学算法008-韩信点兵

热门文章

  1. html怎样导入ps,【Photoshop软件新手向】如何导入/自制笔刷?
  2. 不破坏背景的情况下在线ps替换文字
  3. 读过的laravel文章
  4. android模拟遥控器home点击
  5. Unity 打包图集
  6. matlab中标幺值,标幺值概述
  7. RPG Maker更改界面分辨率并且制作炫酷界面
  8. 中芯国际二零一八年第三季度业绩公布
  9. 【Vim】将Cpas_Lock 与 Esc 键进行互换
  10. 【Excel】excel使用VLOOKUP+IF实现多列匹配查找