微信公众号体系中的第三方平台:功能、权限与授权体系详解

2024-07-24
来源:网络整理

背景

大家最熟悉的微信公众平台体系就是公众号和小程序了。如果需要使用公众号的高级功能,首先想到的就是组建一个开发团队来做这些工作。大多数情况下,公众号运营人员会把这些工作外包出去;但外包之后有个风险:账号的所有权是不能外包的。如果有风险,我可以把外包的工作收回来。

微信公众号系统原生就支持这种“外包”思路,也就是微信第三方平台。公众号可以通过这个系统将公众号的部分功能和权限开放给第三方,对应的文档可以在微信开放平台找到。不同于自家公众号的开发,微信第三方平台的授权体系非常谨慎,我刚接触的时候,被文档里提到的各种东西搞得一头雾水,所以特意把这个过程梳理了一遍,以图表的形式讲解了授权流程,方便查阅。

已经了解授权流程的同学可以直接拉到本文末尾查看完整图,本文按照授权顺序一步步讲解,图中的key或者数据都以颜色标注,一一对应。

希望本文能够对微信第三方平台开发者有所帮助。

授权步骤 第三方平台数据准备

微信第三方平台也是微信开放平台上的一个账号,它还有一个概念,在微信文档中,第三方平台被称为“”。第三方平台需要实现一个用于微信回调的URL,在平台中称之为“授权事件接收URL”(以下简称“通知回调”),在应用详情页进行配置。

不要被名字误导,实际上所有与第三方平台直接相关的事件都将通过此 URL 进行通知。

得到

该过程涉及两个术语:ket 和 en。

微信每隔十分钟会向通知回调发送一次消息,告知第三方平台后台参数ket,第三方平台收到此消息后需要用自己的and信息加上微信推送的and信息,通过微信第三方平台接口从微信平台换取en。

生成授权注册页面的URL

要求公众号点击授权有两种模式,一种是引导公众号主扫码进入授权页面,另一种是点击移动端的链接授权,两种方式和后台类似,本文讲解第一种。

这里其实就两个小步骤:​​第一步是第三方平台后台向微信请求一个预授权码;第二步就是用这个预授权码组合成一个URL,供公众号主扫描。

关键参数如下(是扫码的URL):

公众账号授权获取授权公众账号

公众号扫码授权后,微信会向通知回调发送消息,除了通知被授权的公众号(简称“”),最重要的是推送一个新的工单字段,此代码与授予权限的公众号绑定:

外包微信平台有哪些_外包微信平台怎么赚钱_微信平台外包

拉取公众账号信息及授予的权限

这是两个API,比较重要的是拉取公众号授予的权限范围,调用接口“”。除了获取授权范围,最重要的是引入两个新的参数:

两个API的调用图如下:

公众号代刷新业务

上面提到,通过API:可以获取替换公众号时使用的ken,利用这个ken可以替换公众号中用到的调用。

同样这个也是有过期时间的,所以第三方平台在快要过期的时候需要调用API来刷新,使用这个API循环刷新即可:

获取微信JS-SDK

微信JS-SDK接口使用的不是 ,而是所谓的,普通公众号使用它来兑换,第三方平台则使用 en 来兑换:

其实这个接口已经不属于微信第三方应用的范畴了,只是一个通用的微信公众平台接口,不过因为很常用,所以这里还是讲解一下。

授权流程概述

将上述子步骤合并成一个概览如下(图片比较宽,建议在大屏幕上查看或者放大):

图中调用流程的标题即为API名称,可以作为关键字在微信文档中进行搜索。

参考

本文采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行授权。

分享