上传下载

更新时间:

接口声明

{ "name": "blueos.network.request" }
复制代码

导入模块

import request from '@blueos.network.request'const request = require('@blueos.network.request')
复制代码

接口定义

request.upload(OBJECT)

上传文件

参数:

参数名 类型 必填 说明
url String 资源 url
header Object 请求的 header,会将其所有属性设置到请求的 header 部分。
method String 默认为 POST,可以是: POST, PUT
files Array 需要上传的文件列表,使用 multipart/form-data 方式提交
data Array HTTP 请求中其他额外的 form data
success Function 成功返回的回调函数
fail Function 失败的回调函数
complete Function 结束的回调函数(调用成功、失败都会执行)
files 参数 :

files 参数是一个 file 对象的数组,file 对象的结构如下:

参数名 类型 必填 说明
filename String multipart 提交时,header 中的文件名
name String multipart 提交时,表单的项目名,默认 file
uri String 文件的本地地址
type String 文件的 Content-Type 格式,默认会根据 filename 或者 uri 的后缀获取
data 参数 :
参数名 类型 必填 说明
name String form 元素的名称。
value String form 元素的值。
success 返回值:
参数名 类型 说明
code Integer 服务器状态 code
data String 如果服务器返回的 header 中 type 是 text/*或 application/json、application/javascript、application/xml,值是文本内容,否则是存储的临时文件的 uri 临时文件如果是图片或者视频内容,可以将图片设置到 image 或 video 控件上显示
headers Object 服务器 response 的所有 header

示例:

request.upload({
  url: 'http://www.example.com',
  files: [
    {
      uri: 'internal://xxx/xxx/test',
      name: 'file1',
      filename: 'test.png',
    },
  ],
  data: [
    {
      name: 'param1',
      value: 'value1',
    },
  ],
  success: function (data) {
    console.log('handling success')
  },
  fail: function (data, code) {
    console.log(`handling fail, code = ${code}`)
  },
})
复制代码

request.download(OBJECT)

下载文件

参数:

参数名 类型 必填 说明
url String 资源 url
header String 请求的 header,会将其所有属性设置到请求的 header 部分。
description String 下载描述,会用于通知栏标题。默认为文件名
filename String 下载文件名。默认从网络请求或 url 中获取
success Function 成功返回的回调函数
fail Function 失败的回调函数
complete Function 结束的回调函数(调用成功、失败都会执行)
success 返回值:
参数名 类型 说明
token String 下载的 token,根据此 token 获取下载状态

示例:

request.download({
  url: 'http://www.example.com',
  success: function (data) {
    console.log(`handling success${data.token}`)
  },
  fail: function (data, code) {
    console.log(`handling fail, code = ${code}`)
  },
})
复制代码

request.abortDownload(OBJECT)

中断下载任务

参数:

参数名 类型 必填 说明
token String download 接口返回的 token
success Function 成功返回的回调函数
fail Function 失败的回调函数
complete Function 结束的回调函数(调用成功、失败都会执行)
success 返回值:

fail 返回错误代码:
错误码  说明
1000 中断失败
1001 下载任务不存在

示例:

request.abortDownload({
  token: '123',
  success: function (data) {
    console.log(`abortDownload success`)
  },
  fail: function (data, code) {
    console.log(`handling fail, code = ${code}`)
  },
})
复制代码

request.onDownloadComplete(OBJECT)

监听下载任务

参数:

参数名 类型 必填 说明
token String download 接口返回的 token
success Function 成功返回的回调函数
fail Function 失败的回调函数
complete Function 结束的回调函数(调用成功、失败都会执行)
success 返回值:
参数名 类型 说明
uri String 下载文件的 uri(默认情况下该文件处于应用缓存目录。如果文件类型为图片或者视频且要求用户可以在相册等应用内查看,则需要将该文件转存至公共目录,参考 media 接口中的方法实现即可)
fail 返回错误代码:
错误码  说明
1000 下载失败
1001 下载任务不存在

示例:

request.onDownloadComplete({
  token: '123',
  success: function (data) {
    console.log(`handling success${data.uri}`)
  },
  fail: function (data, code) {
    console.log(`handling fail, code = ${code}`)
  },
})
复制代码
上一篇
蓝牙
下一篇
数据请求
以上内容对您是否有帮助?
  • 毫无帮助
  • 帮助不大
  • 一般
  • 很好
  • 非常好
意见反馈