以Promise风格调用: 不支持。
下载文件资源到本地
属性 | 类型 | 默认值 | 必填 | 说明 |
|---|---|---|---|---|
| url | string | 是 | 下载资源的 url(推荐使用 encodeURIComponent 对参数部分进行编码) | |
| header | object | 否 | HTTP 请求的 Header | |
| timeout | number | 否 | 超时时间,单位为毫秒 | |
| filePath | string | 否 | 指定文件下载后存储的路径 (本地路径) | |
| success | function | 否 | 接口调用成功的回调函数 | |
| fail | function | 否 | 接口调用失败的回调函数 | |
| complete | function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) |
属性 | 类型 | 说明 |
|---|---|---|
| tempFilePath | string | 临时文件路径 (本地路径)。没传入 filePath 指定文件存储路径时会返回,下载后的文件会存储到一个临时文件 |
| filePath | string | 用户文件路径 (本地路径)。传入 filePath 时会返回,跟传入的 filePath 一致 |
| statusCode | number | 开发者服务器返回的 HTTP 状态码 |
| errMsg | string |
属性 | 类型 | 说明 |
|---|---|---|
| code | number | |
| data | object | |
| msg | string |
xhs.downloadFile({
url: 'https://example.com/audio/123', //仅为示例,并非真实的资源
filePath: `${wx.env.USER_DATA_PATH}/${Date.now()}.avif`,
success: (res) => {
// console.log('downloadFile result:', res);
if (res.statusCode === 200) {
// 建议做个兜底
const filePath = res.filePath || res.tempFilePath;
this.setData({
filePath
})
}
},
fail: (error) => {
console.error(error)
}
})