第三方平台(TP)是指帮助小程序运营者进行开发、管理、运营小程序并从此获取收益的平台;可在小程序首页进行注册,成为企业类型的智能小程序后即可创建第三方平台。小程序运营者,可以一键授权给第三方平台,通过第三方平台来完成业务。
小程序授权给第三方平台的技术实现流程如下图:
出于安全考虑,在第三方平台创建审核通过后,小程序TP平台服务器每隔10分钟会向第三方的消息接收地址推送一次 ticket,用于获取第三方平台接口调用凭据,接收到后必须直接返回字符串 success。
第三方平台通过自己的 client_id 和 ticket(每10分钟推送一次的安全 ticket )来获取自己的接口调用凭据(access_token)。
第三方平台通过自己的接口调用凭据(access_token)来获取用于授权流程准备的预授权码(pre_auth_code)。
根据 client_id, pre_auth_code, redirect_uri生 成授权二维码。
引导小程序管理员扫码授权,在回调 URL 参数中返回授权码 (authorization_code) 和过期时间。
通过授权码和自己的接口调用凭据(access_token),换取小程序的接口调用凭据(access_token和用于前者快过期时用来刷新它的 refresh_token)和授权信息(授权了哪些权限等信息)。
通过自己的接口调用凭证 access_token 和 refresh_token 来刷新小程序的接口调用凭据。
当小程序对第三方进行授权、取消授权、更新授权时,将通过事件推送告诉开发者。