tt.showDouyinOpenAuth收藏我的收藏
收藏
我的收藏基础库 1.93.0 开始支持本方法,这是一个异步方法。
提供小程序获取抖音权限的能力,展示出抖音权限授权弹窗。在使用接口前,除创建粉丝群,其他Scope需要小程序拥有者前往「抖音开放平台控制台」> 应用详情 > 「能力」>「用户数据能力」>「抖音账号数据」页面申请开通小程序需要的权限。
⚠️注意:该接口只支持在抖音 APP 中调用。
语法
tt.showDouyinOpenAuth(options)
参数说明
options 为 object 类型,属性如下:
属性名 | 类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
scopeList[推荐] | array | | 是 | 3.5.0 | |
scopes | object | | 是 | 需要获取权限的信息。scopes是旧版本参数, 目前兼容该字段传入,不推荐使用 | 1.93.0 |
success | function | | 否 | 接口调用成功后的回调函数 | 1.93.0 |
fail | function | | 否 | 接口调用失败后的回调函数 | 1.93.0 |
complete | function | | 否 | 接口调用结束后的回调函数(调用成功、失败都会执行) | 1.93.0 |
scope 说明
能力权限分为以下几个场景,需要满足以下条件:
1. 场景限制
每次调用授权时,仅支持授权一种场景的能力,不允许多个场景组合授权,场景和能力合法值见下表。
场景一:获取抖音账号数据
场景二:获取抖音视频数据
Scope名称 | 能力名称 | 描述 | 接口文档 |
ma.video.bind | 视频数据查询 | 最新1天的查询视频id的基础信息(标题、发布时间等)和实时数据(播放、点赞、评论等) | |
ma.item.data | 近30天视频数据查询 | 查询近30天的视频id基础信息(标题、发布时间等)和实时数据(播放、点赞、评论等) | |
ma.item.comment | 视频评论数据 | 经用户授权后获取其抖音公开视频下的所有评论及评论回复,包含评论内容、评论点赞、评论回复等内容 | 评论列表 |
场景三:获取抖音行为数据
注意:此处申请的权限在抖音开放平台必须是已开通状态
2.数量限制
单次授权的scope不能超过3个
scopeList & scopes
scopeList 与 scopes 选择其中一个即可,新接入的小程序推荐使用 scopeList 。scopes 是历史版本的参数,目前仍能解析该字段,但不再支持设置权限勾选状态,不推荐使用。同时传入二者时 scopeList 优先生效。
scopes 参数为 object 类型,其中 key 值是申请权限的 scope,value 仅支持 2(非必选,默认不选中)
值 | 说明 | 最低支持版本 |
0 | 必选项(不支持) | 1.93.0 |
1 | 非必选,默认选中(不支持) | 1.93.0 |
2 | 非必选,默认不选中 | 1.93.0 |
回调成功
object 类型,属性如下:
属性名 | 类型 | 说明 | 最低支持版本 |
errMsg | string | 回调信息 | 1.93.0 |
ticket | string | 1.93.0 | |
grantPermissions | string[] | 用户授权的权限 | 1.93.0 |
ticket说明
ticket
是临时票据,即 “开放平台的接口文档” 中获取 access_token 请求参数里的code
,是用来获取用户的长期票据 access_token
的。开放平台的授权 流程示意图如下:
回调失败
object 类型,属性如下:
属性名 | 类型 | 说明 | 最低支持版本 |
errNo | number | 错误码 | 1.93.0 |
errMsg | string | 错误信息 | 1.93.0 |
错误说明
errNo | errMsg | 说明 | 最低支持版本 |
10201 | privacy permission is not authorized | 3.19.0 | |
10202 | api scope is not declared in the privacy agreement | 3.19.0 | |
10301 | feature is not supported in app | 宿主不支持登录/宿主不支持抖音开放平台授权 | 1.93.0 |
21100 | login fail xxx | 用户登录失败 | 1.93.0 |
21101 | request auth ticket fail xxx | 获取权限票据失败 | 1.93.0 |
21102 | request auth scope info fail xxx | 获取权限信息失败 | 1.93.0 |
21103 | request auth code fail xxx | 获取权限授权码失败 | 1.93.0 |
20000 | scopeList is empty | 开发者传入的 scopeList 为空 | 1.93.0 |
21104 | no usage scope | 没有可用的授权权限(开发者申请授权的权限全都没有被开通) | 1.93.0 |
21105 | auth deny | 用户取消授权 | 1.93.0 |
21106 | scope counts out of limit(<=3) | 授权失败,最多支持传入3个Scope | 3.5.0 |
21107 | fail to auth, invalid scope | 授权失败,传入Scope不符合平台规则 | 3.5.0 |
扫码体验
代码示例
tt.showDouyinOpenAuth({ scopeList: ['data.external.item', 'item.comment'], // scopes: {'item.comment': 0}, success(res) { console.log("success", res); }, fail(res) { console.log("fail", res); }, complete(res) { console.log("complete", res); }, });
Bug & Tip
- •Tip:该接口只支持抖音,所以请在抖音 APP 中调用;
- •Tip:每次申请授权的抖音权限必须是在抖音开发平台已经申请并且审批开通的权限,否则会导致本次授权操作失败;
- •Tip:在请求服务端接口时,应用唯一标识在小程序场景下,对应的是小程序
appId
;应用唯一标识对应的密钥对应的是小程序的 APP Secret
。- •增量授权能力已经默认支持,无需在调用时传入
incremental_authorization
。- •「抖音开发者 工具」模拟器中暂不支持该能力,请使用真机预览调试。