> 微信小程序开发教程手册 > 微信小程序API 上传、下载

wx.uploadFile(OBJECT)


将本地资源上传到开发者服务器。如页面通过 wx.chooseImage 等接口获取到一个本地资源的临时文件路径后,可通过此接口将本地资源上传到指定服务器。客户端发起一个HttpS POST请求,其中 Content-Typemultipart/form-data

OBJECT参数说明:

参数 类型 必填 说明
url String 开发者服务器url
filePath String 要上传文件资源的路径
name String 文件对应的key , 开发者在服务器端通过这个key可以获取到文件二进制内容
header Object HTTP 请求 Header
formData Object HTTP 请求中其他额外的form data
success Function 接口调用成功的回调函数
fail Function 接口调用失败的回调函数
complete Function 接口调用结束的回调函数(调用成功、失败都会执行)

示例代码:

wx.chooseImage({
  success:function(res){
    var tempFilePaths = res.tempFilePaths; 
    wx.uploadFile({
      url: 'http://example.com/upload',
      filePath: tempFilePaths[0],
      name:"file",
      formData:{
        "user":"test"
      }
    })
  }
})

wx.downloadFile(OBJECT)


下载文件资源到本地。客户端直接发起一个HTTP GET请求,把下载到的资源根据 type 进行处理,并返回文件的本地临时路径。

OBJECT参数说明:

参数 类型 必填 必填
url String 下载资源的 url
type String 下载资源的类型,用于客户端识别处理,有效值:image/audio/video
header Object HTTP 请求 Header
success Function 下载成功后以 tempFilePath 的形式传给页面,res={tempFilePath:"文件的临时路径"}
fail Function 接口调用失败的回调函数
complete Function 接口调用结束的回调函数(调用成功、失败都会执行)

示例代码:

wx.downloadFile({
  url: 'http://example.com/audio/123',
  type: 'audio',
  success:function(res){
    wx.playVoice({
        filePath: res.tempFilePath
    })
  }
})