微信第三方平台的授权过程整理

最近碰到微信第三方平台这个东西,就研究了下。由于微信官方文档顺序不是很明确,我特别也整理了一下。
官方的概述是
公众平台第三方平台是为了让公众号或小程序运营者,在面向垂直行业需求时,可以一键授权给第三方平台(并且可以同时授权给多家第三方),通过第三方平台来完成业务,开放给所有通过开发者资质认证后的开发者使用。
就是说第三方平台相当与一个中介来管理那些授权的公众号和小程序。

申请的流程可以去微信第三方平台的官方平台
https://open.weixin.qq.com/cgi-bin/frame?t=home/wx_plugin_tmpl&lang=zh_CN

以公众号为例子,公众号授权第三方平台流程是这样子的:
在这里插入图片描述
首先名词梳理下:
component_appid:第三方平台 ID,在申请通过之后可以查看。
component_appsecret:第三方平台密钥,申请之后可以查看,需要自己妥善保存,否则丢失或者忘记之后只能重置获取。
component_verify_ticket:微信后台每10分钟推送到第三方平台的授权接收 URL的 Ticket。
component_access_token:第三放平台的 Token,有效期2小时,需要根据 component_verify_ticket 获取。
pre_auth_code:从名称可以看出是预授权码,由 component_access_token 结合 component_appid 获取,其中用户授权给第三方平台需要通过预授权码才能完成整个授权。
authorization_code:用户授权时微信通过地址栏参数的方式传输给第三方平台,平台需要根据该 code 结合 component_access_token 以及 component_appid 获取授权公众号的信息。
authorizer_appid:授权方 AppID 其实就是公众号的 AppId(也就是下文中消息与事件接收 URL 中的 A)。
authorizer_access_token:公众号的 Access Token。
authorizer_refresh_token:主要用于第三方平台获取和刷新已授权用户的 access_token,只会在授权的时候提供,公众号 Access Token 也是2小时失效,所以需要根据 authorizer_refresh_token 进行刷新。

授权流程(以下所需的参数可参考上面的名词)
1.接收 component_verify_ticket。
该 Ticket 将会以 POST 的方式发送到(授权接收 URL,这是微信第三方平台注册时配置的参数),对消息进行解密,获取 Ticket。
微信的加密解密详见:https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=open1419318479&lang=zh_CN

返回结果示例

<xml>
<AppId> </AppId>
<CreateTime>1413192605 </CreateTime>
<InfoType> </InfoType>
<ComponentVerifyTicket> </ComponentVerifyTicket>
</xml>

由于微信数据以 XML 方式进行推送&#

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值