微信开放平台(第三方平台)

2021/11/23 其它 共 5469 字,约 16 分钟

第三方平台概述

微信开放平台-第三方平台(简称第三方平台)开放给所有通过开发者资质认证的开发者使用。在得到公众号或小程序运营者(简称运营者)授权后,第三方平台开发者可以通过调用微信开放平台的接口能力,为公众号或小程序的运营者提供账号申请、小程序创建、技术开发、行业方案、活动营销、插件能力等全方位服务

第三方平台有什么优势?

  • 微信官方许可
  • 免繁琐设置
  • 安全可靠的授权

第三方平台分类

在平台类型上,第三方平台分为平台型和定制化型:

  1. 定制化型服务商指的是通过获取商家提供小程序或者公众号的appid和secret进行开发,内容可以完全是商家定制化的,服务商可以将票据埋在小程序中(具体操作请查看创建定制化型服务商),便于平台识别出该小程序是某个第三方服务商代开发的。定制化型服务商的详细说明文档请点击查看定制化型服务商说明文档
  2. 平台型服务商指的是可通过第三方平台的authorizer_access_token在获得商家授权后进行代商家小程序/公众号调用相关接口能力进行开发;且如果是小程序,则可以将小程序代码上传托管到第三方平台的小程序模板库中。利用第三方平台的能力,可基于一个模板进行发布多个小程序,有利于服务商批量为商家开发小程序。平台型服务商的授权流程请点击查看授权技术流程说明

补充,在技术上,第三方平台是通过获得公众号或小程序的接口能力的授权,然后代公众平台帐号调用各业务接口来实现业务的。

该选择平台型还是定制化型?

  • 只有平台型第三方平台才提供授权方式,而定制化型通常是通过获取商家提供小程序或者公众号的appid和secret进行开发,因此,若希望能通过商家扫码即可授权给服务商进行代开发代运营,则应当选择平台型第三方。

为什么选择扫码方式进行授权?

  • 就服务商而言,此种授权方式更加安全和便捷,服务商无需管理多个商家的账号密码或者appid和secret;
  • 就商家而言,此种授权方式也更加安全和便捷,商家只需要将部分权限授权给服务商即可;无需将公众号/小程序的账号密码或者appid和secret都交由服务商;且商家可以随时进行解除授权;

平台型第三方平台应用场景

1、为商家提供综合的解决方案,整体打包公众号或小程序的产品开发、运营等;

2、为小程序商家提供小程序代开发服务、代运营服务;

3、为小商店商家提供小商店增值服务;

4、为公众号商家例如提供专门优化图文消息视觉样式和排版的工具,或专门定制的 CRM 用户管理功能、精细化运营用户公众号等;

第三方小程序开发模式说明

img

  • 绑定开发小程序的操作,请查看绑定开发小程序
  • 更多关于第三方平台代开发小程序介绍可查看https://developers.weixin.qq.com/miniprogram/dev/devtools/ext.html
  • 上述流程是将代码提交到草稿箱,再到模板库再提交到小程序。如果想实现直接将代码提交到小程序,则可以通过使用 directCommit 直接提交至待审核列表。directCommit是ext.json里的一个参数,详情可查看extAppid 的开发调试
  • 除了通过开发者工具提交代码,还可以通过miniprogram-ci提交代码,directCommit同样适用于ci工具;img
  • 使用第三方代开发模式,重点需要关注ext.json文件的使用,详情可查看https://developers.weixin.qq.com/miniprogram/dev/devtools/ext.html

如上图所示,第三方平台帮助旗下已授权的小程序进行代码管理时,需先开发完成小程序模板,再将小程序模板部署到旗下小程序帐号中,具体流程如下:

第一步:绑定开发小程序

(1)第三方平台的开发人员需先到微信公众平台(mp.weixin.qq.com)申请一个普通的小程序并完善小程序的头像、昵称、简介、服务类目等信息。

(2)进入微信开放平台,在第三方平台详情中,将该小程序添加为开发小程序。(注意,绑定为开发小程序后,该小程序在开发工具中上传,代码会直接上传到开放平台,不会上传到公众平台)

第二步:小程序模板的开发和上传

使用开发小程序的开发者微信号登录微信开发者工具,开发者工具中按照正常的小程序开发流程进行代码开发和调试。开发完成后,在开发工具中点击上传。使用详见:第三方平台代开发小程序

第三步:添加到小程序模板库,获得模板 ID

从开发者工具中上传的代码,会先存在草稿箱中,每个开发小程序只保留最新一份上传记录。开发者可将草稿箱中的代码添加到小程序模板库中,小程序模板库中的模板不会被覆盖。最多可以有200个代码模板,添加后可以获得模板 ID(TemplateID)。

小程序模板库分为普通模板库和标准模板库,关于两者的区别可以查看小程序模板库管理

第四步:调用接口,为旗下授权的小程序部署代码

具体接口详见上传代码

重点提示:

  • 小程序授权托管之后,只能使用第三方平台的在微信开放平台登记的服务器域名和业务域名。所以第三方平台在帮助旗下小程序发布代码之前,需先把服务器域名和业务域名设置到小程序的服务器域名和业务域名中
  • 设置接口详见设置服务器域名设置业务域名

操作指南

开放平台

注册开发平台

1、登录微信开发平台,点击注册

2、填写邮箱与密码信息,并且同意微信开放平台开发者服务协议

3、激活邮箱

4、完善开发者资料

5、完成开发者资质认证

绑定公众号和小程序

1、登录微信开发平台,进入管理中心,点击公众号或者小程序

2、点击绑定公众号或者点击绑定小程序

3、输入要绑定公众号或者小程序的邮箱和密码

4、公众号或者小程序管理员扫码确认

5、安全认证通过之后,即可完成绑定

6、若要解除绑定,则在操作列点击查看,然后解除绑定即可。

关联或更换主体

登录开发平台,进入账号中心,选择基本资料,进入管理主体信息,点击管理。

第三方平台

创建与配置准备工作

创建与配置第三方平台整体步骤分为:

  • 输入基本信息
  • 选择权限集(平台型服务商)
  • 填写开发资料(平台型服务商)
  • 提交审核(也可以在提交基本信息后即可提交审核,然后再编辑开发资料)
  • 全网发布(开发资料需要全网发布才生效)

然而,在基本信息和开发资料填写环节,需要准备的信息较多,以下是创建第三方平台的准备事项,便于开发者提前做好准备。

基本信息

1、需要准备可访问的官网网站,创建第三方平台时需要填写官方网站地址

2、需要准备108 x 108像素,大小不超过300KB,且格式为PNG的图片,用于作为平台的图标

开发资料

1、需要准备“授权发起页域名”,用于从该域名跳转至授权页面(如果启用云开发,则会默认支持从云托管域名内网页跳转到登录授权页。)

2、需要准备“授权事件接收URL”,用于接收取消授权通知、授权成功通知、授权更新通知,也用于接收ticket等(如果启用云开发模式,则只需要填写对应的云环境等信息即可)

3、需要准备“消息与事件接收URL”,用于接收公众号或小程序消息和事件推送(如果启用云开发模式,则只需要填写对应的云环境等信息即可)

4、如果是公众号开发,还需要准备“公众号开发域名”,作为调用JS SDK等网页开发工作时所用的域名

5、如果是小程序开发,还需要准备“小程序服务器域名”和“小程序业务域名”。

授权流程说明

整体说明

1、本文涉及的小程序或者公众号授权给第三方平台的技术实现流程仅适用于平台型第三方平台,不适用于定制化型第三方平台。

2、当前提供了三种授权方式,分别是PC版扫码授权、H5版授权及小程序插件版授权,开发者可根据自身业务情况,选择合适的授权方式。

整体步骤

  • 一、调用接口获取预授权码(pre_auth_code),接口详情请查看api_create_preauthcode

  • 二、按照官方文档规则生成PC端的授权二维码或者移动端的授权链接,详情请看下方说明

  • 三、公众号/小程序管理员扫码或者访问移动端授权链接,确认同意授权给第三方平台

  • 四、管理员授权确认之后,授权页会自动跳转进入回调 URI,并在 URL 参数中返回授权码和过期时间(redirect_url?auth_code=xxx&expires_in=600)

  • 五、调用接口生成authorizer_access_token,然后以该token调用公众号或小程序的相关 API

接口文档

授权相关接口(1期开发)

获取验证票据

验证票据(component_verify_ticket),在第三方平台创建审核通过后,微信服务器会向其 ”授权事件接收URL” 每隔 10 分钟以 POST 的方式推送 component_verify_ticket

接收 POST 请求后,只需直接返回字符串 success。为了加强安全性,postdata 中的 xml 将使用服务申请时的加解密 key 来进行加密,具体请见《加密解密技术方案》, 在收到推送后需进行解密(详细请见《消息加解密接入指引》)。

启动ticket推送服务

该 API 用于启动ticket推送服务。

获取令牌(重要)

令牌(component_access_token)是第三方平台接口的调用凭据。令牌的获取是有限制的,每个令牌的有效期为 2 小时,请自行做好令牌的管理,在令牌快过期时(比如1小时50分),重新调用接口获取。

如未特殊说明,令牌一般作为被调用接口的 GET 参数 component_access_token 的值使用。

获取预授权码

预授权码(pre_auth_code)是第三方平台方实现授权托管的必备信息,每个预授权码有效期为 1800秒。需要先获取令牌才能调用。

使用授权码获取授权信息

当用户在第三方平台授权页中完成授权流程后,第三方平台开发者可以在回调 URI 中通过 URL 参数获取授权码。使用以下接口可以换取公众号/小程序的授权信息。建议保存授权信息中的刷新令牌(authorizer_refresh_token)。

获取/刷新接口调用令牌

在公众号/小程序接口调用令牌(authorizer_access_token)失效时,可以使用刷新令牌(authorizer_refresh_token)获取新的接口调用令牌。

获取授权方的帐号信息

该 API 用于获取授权方的基本信息,包括头像、昵称、帐号类型、认证类型、微信号、原始ID和二维码图片URL。

授权变更通知推送

当公众号/小程序对第三方平台进行授权、取消授权、更新授权后,微信服务器会向第三方平台方的授权事件接收 URL(创建时由第三方平台时填写)以 POST 的方式推送相关通知。

授权方账号管理

拉取所有已授权的帐号信息

使用本 API 拉取当前所有已授权的帐号基本信息。

获取授权方选项信息

本 API 用于获取授权方的公众号/小程序的选项设置信息,如:地理位置上报,语音识别开关,多客服开关。

设置授权方选项信息

本 API 用于设置授权方的公众号/小程序的选项信息,如:地理位置上报,语音识别开关,多客服开关。

第三方平台域名管理

设置第三方平台服务器域名

本接口用于配置第三方平台小程序服务器域名。

授权给第三方代开发的小程序,其服务器域名只可以为在第三方平台账号中配置的小程序服务器域名。即调用接口设置小程序服务器域名之前可以调本接口先进行第三方平台小程序服务器域名配置。

获取第三方业务域名的校验文件

本接口用于获取第三方平台小程序业务域名的校验文件。

设置第三方平台业务域名

本接口用于配置第三方平台小程序业务域名。

配置业务域名时,需要将校验文件放置在域名根目录下,例如wx.qq.com,并确保可以访问该文件。可以通过获取第三方小程序业务域名的校验文件接口获取检验文件。

授权给第三方代开发的小程序,其业务域名只可以为在第三方平台账号中配置的小程序业务域名。即调用接口设置小程序业务域名之前可以调本接口先进行第三方平台小程序业务域名配置。

小程序成员管理

绑定体验者

第三方平台在帮助旗下授权的小程序提交代码审核之前,可先让小程序运营者体验,体验之前需要将运营者的个人微信号添加到该小程序的体验者名单中。

解绑体验者

调用本接口可以将特定微信用户从小程序的体验者列表中解绑。

获取体验者列表

通过本接口可以获取小程序所有已绑定的体验者列表。

公众号业务相关接口

获取公众号关联的小程序
关联小程序
解除已关联的小程序
微信商品库接口

微信商品库接口文档,商家通过本接口,可将商品信息更新到微信后台,可应用于微信公众号图文及其他场景内的商品推广。第三方获得商家授权微信商品库权限后,可代商家完成商品的导入及更新、查询系统的搭建。接口详情可见:微信商品库接口文档

扫服务号二维码打开小程序

包括获取、增加或修改、发布、删除服务号二维码规则。

####

小程序用户隐私保护指引

配置小程序用户隐私保护指引

本接口用于配置第三方代开发小程序的用户隐私保护指引。可根据小程序实际情况进行完善。小程序发布后即向c端用户展示。

查询小程序用户隐私保护指引

本接口用于查询第三方代开发小程序的用户隐私保护指引,也可以用来查询有哪些privacy_key可以进行配置。

上传小程序用户隐私保护指引

本接口用于上传自定义的小程序的用户隐私保护指引。

代商家注册小程序

快速注册企业小程序
复用公众号主体快速注册小程序
快速创建个人小程序

开放平台账号管理(后期开发)

openApi管理(后期开发)

清空api的调用quota

本接口用于清空公众号/小程序/第三方平台等接口的每日调用接口次数。

查询openApi调用quota

本接口用于查询公众号/小程序/第三方平台等接口的每日调用接口的额度以及调用次数。

查询rid信息

本接口用于查询调用公众号/小程序/第三方平台等接口报错返回的rid详情信息,辅助开发者高效定位问题。

文档信息

搜索

    Table of Contents