⼩程序下载图⽚、⽂件、wx.downloadFile,废话少说直接上
代码
官⽅开发⽂档 wx.downloadFile(OBJECT)
下载⽂件资源到本地,客户端直接发起⼀个 HTTP GET 请求,返回⽂件的本地临时路径。使⽤前请先阅读。
OBJECT参数说明:
参数类型必填必填
url String是下载资源的 url
header Object否HTTP 请求 Header,header 中不能设置 Referer
success Function否下载成功后以 tempFilePath 的形式传给页⾯,res = {tempFilePath: '⽂件的临时路径'}
fail Function否接⼝调⽤失败的回调函数
complete Function否接⼝调⽤结束的回调函数(调⽤成功、失败都会执⾏)
注:⽂件的临时路径,在⼩程序本次启动期间可以正常使⽤,如需持久保存,需在主动调⽤ ,才能在⼩程序下次启动时访问得到。success返回参数说明:
参数类型说明
tempFilePath String临时⽂件路径,下载后的⽂件会存储到⼀个临时⽂件
statusCode Number开发者服务器返回的 HTTP 状态码
返回值:
基础库 1.4.0 开始⽀持,低版本需做
返回⼀个 downloadTask 对象,通过 downloadTask,可监听下载进度变化事件,以及取消下载任务。
downloadTask
downloadTask 对象的⽅法列表:
⽅法参数说明最低版本onProgressUpdate callback监听下载进度变化
abort中断下载任务
onProgressUpdate 返回参数说明:
参数类型说明
progress Number下载进度百分⽐
totalBytesWritten Number已经下载的数据长度,单位 Bytes
totalBytesExpectedToWrite Number预期需要下载的数据总长度,单位 Bytes
wxml:
<button bindtap='down_file'>下载</button>//⽤来触发下载函数的按钮
<view><image src='{{img_l}}' bindtap='preview_img'></image></view>
下载的资源在服务器中⽀持:
page({
data:{
img_l:''
},
preview_img:function(){//图⽚预览函数
wx.previewImage({
current: this.data.img_l, // 当前显⽰图⽚的http链接
urls: this.data.img_l // 需要预览的图⽚http链接列表
write的返回值})
},
down_file:function(){
var _this = this;
const downloadTask=wx.downloadFile({
url: '127.0.0.1/m_pro/min_img/1517295297785-2018-01-30.jpg', //仅为⽰例,并⾮真实的资源
success: function (res) {
// 只要服务器有响应数据,就会把响应内容写⼊⽂件并进⼊ success 回调,业务需要⾃⾏判断是否下载到了想要的内容 console.log(res)
if(res.statusCode === 200){
_this.setData({
img_pFilePath //将下载的图⽚临时路径赋值给img_l,⽤于预览图⽚
})
}
}
})
console.log('下载进度', res.progress)
console.log('已经下载的数据长度', alBytesWritten)
console.log('预期需要下载的数据总长度', alBytesExpectedToWrite)
})
}
})
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论