微信第三方平台-受权流程经验分享

原文地址: www.jianshu.com/p/67836ffa9…小程序

在作微信第三方平台开发的时候,虽然受权的技术实现流程比较简单,可是相对于一个key直接集成的一些其余的服务来讲,仍是有一些步骤,过一段时间再回头查相关功能时仍是可能忘记的,虽然官方的文档很全,但时每次都要前先后后看文档或每次都要走一遍步骤仍是挺浪费时间的.微信

  • 微信开放平台:平台定位,面向开发者,提供微信登陆、分享、支付等相关权限和服务
  • 微信公众平台:包括订阅号,服务号,企业号和小程序(可申请支付)

因而本人整理了下相关内容,进行分享和讨论.微信公众平台

交互流程

搬自官网,以公众号为例,受权给第三方平台总体流程以下图:3d

image.png

受权流程技术说明code

具体的步骤为:component

  1. 第三方平台方获取预受权码(pre_auth_code)
  2. 引入用户进入受权页(PC和移动端)
  3. 用户确认并赞成登陆受权给第三方平台方
  4. 受权后回调URI,获得受权码(authorization_code)和过时时间
  5. 利用受权码调用公众号或小程序的相关API(获取受权方的token等)

接口调用流程

总体流程仍是很清晰易懂的,可是到具体接口调用时可能会有一些混乱,好比接口之间的参数的衔接等.所以本人制做了一张图,从接口调用的角度来描述受权的流程,以下:cdn

image.png

步骤从上到下blog

常见问题

1. component_access_token的更新方式

答: 使用获取接口来更新.token

2. authorizer_access_token的更新方式

答: 使用refresh_token来更新.接口

refresh_token也要同时使用最新返回的结果

3. authorizer_refresh_token的丢失处理

答: 须要从新受权(从头来一遍).

4. component_access_tokenauthorizer_access_token的更新机制

答: 主动+被动.

  • 主动: 设定定时任务(如:1min)分别检查component_access_tokenauthorizer_access_token是否快过时或过时,若是是则更新token
  • 被动: 每次使用component_access_tokenauthorizer_access_token时,先检查相应其是否过时,若是过时则更新token再继续相应操做
  • 微信该接口有次数限制,所以须要合理的时机来请求
  • 参考: 获取access_token
相关文章
相关标签/搜索