授权流程详解
下面对各API和机制进行介绍(特别注意,所有API调用需要验证调用者IP地址。只有在第三方平台申请时填写的白名单IP地址列表内的IP地址,才能合法调用,其他一律拒绝):
顺序 | 功能 | API的作用 |
---|---|---|
1 | 推送 ticket | 出于安全考虑,在第三方平台创建审核通过后,小程序TP平台服务器每隔10分钟会向第三方的消息接收地址推送一次 ticket,用于获取第三方平台接口调用凭据,接收到后必须直接返回字符串 success。 |
2 | 获取第三方平台 access_token | 第三方平台通过自己的 client_id 和 ticket(每10分钟推送一次的安全 ticket )来获取自己的接口调用凭据(access_token) |
3 | 获取预授权码 pre_auth_code | 第三方平台通过自己的接口调用凭据(access_token)来获取用于授权流程准备的预授权码(pre_auth_code)。 |
4 | 引导小程序管理员对第三方平台进行授权 | 根据 client_id, pre_auth_code, redirect_uri生 成授权二维码。 |
5 | 获取授权码 authorization_code | 引导小程序管理员扫码授权,在回调 URL 参数中返回授权码 (authorization_code) 和过期时间。 |
6 | 使用授权码换小程序的接口调用凭据和授权信息 | 通过授权码和自己的接口调用凭据(access_token),换取小程序的接口调用凭据(access_token和用于前者快过期时用来刷新它的 refresh_token)和授权信息(授权了哪些权限等信息)。 |
7 | 获取(刷新)授权小程序的接口调用凭据 | 通过自己的接口调用凭证 access_token 和 refresh_token 来刷新小程序的接口调用凭据。 |
8 | 获取小程序基础信息 | 当小程序对第三方进行授权、取消授权、更新授权时,将通过事件推送告诉开发者。 |