抖音开放平台Logo
开发者文档
控制台
  • API 概览
  • 开放能力
  • 基础
  • 渲染
  • 设备
  • 文件
  • 位置
  • 媒体
  • 网络
  • 发起请求
  • 下载
  • tt.downloadFile
  • DownloadTask
  • 上传
  • Websocket
  • 游戏转发分享
  • 实时语音
  • 数据缓存
  • 系统
  • 广告
  • 界面
  • 支付
  • Worker
  • tt.downloadFile
    收藏
    我的收藏

    基础库版本 1.0.0 开始支持
    客户端直接发起一个 HTTPS GET 请求,下载网络文件到本地临时目录。
    网络相关的 API 在使用前需要配置域名白名单,详细说明
    iOS系统从 2.21.0(包含)版本开始, 单次下载允许的最大文件为 50MB 提升到 200M,安卓侧依然是50MB。

    语法

    tt.downloadFile(options)

    参数说明

    options 为 Object 类型,属性如下:
    属性名
    类型
    默认值
    必填
    说明
    最低支持版本
    url
    string
    --
    文件地址
    1.0.0
    header
    object
    --
    请求 Header
    1.0.0
    success
    function
    --
    接口调用成功的回调函数
    1.0.0
    fail
    function
    --
    接口调用失败的回调函数
    1.0.0
    complete
    function
    --
    接口调用结束的回调函数(成功、失败都会执行)
    1.0.0

    Header说明

    referer

    请求 header 中的 referer 不可设置。
    其固定格式为:https://tmaservice.developer.toutiao.com?appid={appid}&version={appVersion},其中 appid为小游戏的 APPID,appVersion为小游戏的版本号。

    user-agent

    请求 header 中的 user-agent 不可设置。
    其固定格式分为:
      IOS 系统:[系统user-agent] [宿主标识]/[宿主app版本] ToutiaoMicroApp/[基础库版本] webview/[插件版本]
      Android 系统:[系统user-agent] [宿主标识]/[宿主app版本] ToutiaoMicroApp/[基础库版本] PluginVersion/[插件版本]

    回调成功

    Object 类型,属性如下:
    参数
    参数类型
    说明
    最低支持版本
    tempFilePath
    string
    文件本地路径,下载的文件会存放在临时目录
    1.0.0
    statusCode
    number
    返回 HTTP 状态码
    1.0.0

    回调失败

    Object 类型,属性如下:
    参数
    参数类型
    说明
    最低支持版本
    errMsg
    string
    错误信息
    1.0.0

    返回值

    DownloadTask(下载任务对象),调用 tt.downloadFile 后返回的请求对象。

    扫码体验

    代码示例

    let task = tt.downloadFile({ url: "somefileurl", success(res) { if (res.statusCode === 200) { console.log(`${res.tempFilePath}`); } }, fail(res) { console.log(`downloadFile调用失败`); }, }); task.onProgressUpdate((res) => { this.setData({ progress: res.progress, }); }); if (someReason) { task.abort(); }

    Bug & Tip

      Tip:header 不支持设置 refereruser-agent 字段。
      Tip:请在服务端响应的 header 中指定合理的 Content-Type 字段,以保证客户端正确处理文件类型。
      Tip:目前 tt.downloadFile 暂不支持多文件下载,一次只能下载一个文件。