download

2022-06-13 14:14 更新

下载文件

download({params}, callback(ret, err))

params

url:

  • 类型:字符串
  • 默认值:无
  • 描述:下载地址

encode:

  • 类型:布尔
  • 默认值:true
  • 描述:(可选项)是否对url进行编码。默认或传true时,Android将始终对url编码,而iOS只有在url不合法(如存在中文字符)的时候才进行编码。如果url中有特殊字符需要编码的,建议先在js层进行编码,然后此参数传false。

savePath:

  • 类型:字符串
  • 默认值:无
  • 描述:(可选项)存储路径,不传时使用自动创建的路径

report:

  • 类型:布尔类型
  • 默认值:false
  • 描述:(可选项)下载过程是否上报

cache:

  • 类型:布尔类型
  • 默认值:true
  • 描述:(可选项)是否使用本地缓存

allowResume:

  • 类型:布尔类型
  • 默认值:false
  • 描述:(可选项)是否允许断点续传

method:

  • 类型:字符串

  • 默认值:get

  • 描述:(可选项)请求方法类型

  • 取值范围:

  get
  post

headers:

  • 类型:JSON 对象
  • 默认值:无
  • 描述:(可选项)设置请求头数据

data:

  • 类型:JSON 对象
  • 默认值:无
  • 描述:(可选项)POST 数据,method 为 get 时不传。values 和 body 不能同时使用。
  • 内部字段:

{
    body:"",    //以纯文本的方式提交数据,body 支持字符串及 JSON 对象(若要校验数据完整性,需将 JSON 对象转换成字符串再传入)。提交 JSON 对象时,需设置 application/json 类型的 Content-Type 头
    values:{},  //以表单方式提交参数(JSON 对象), 如 {"field1": "value1", "field1": "value2"} (直接传 JSON 对像.)
}

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:

{
    fileSize:0,                 //文件大小,数字类型
    percent:0,                  //下载进度(0-100),数字类型
    state:0,                    //下载状态,数字类型。(0:下载中、1:下载完成、2:下载失败)
    savePath:''                 //存储路径(字符串类型)
}

err:

  • 类型:JSON 对象
  • 内部字段:

{
    msg:""    //错误描述
}

示例代码

api.download({
    url: url,
    savePath: 'fs://test.rar',
    report: true,
    cache: true,
    allowResume: true
}, function(ret, err) {
    if (ret.state == 1) {
        //下载成功
    } else {


    }
});

补充说明

通过返回的 state 来判断文件是否下载完成,不要通过 percent 来判断

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号