本文实例讲述了微信小程序学习笔记之文件上传、下载操作。分享给大家供大家参考,具体如下:
前面介绍了微信小程序登录应用程序接口与获取用户信息操作。这里再来介绍一下文件的上传与下载操作。
【文件上传】wx.uploadFile
(以上传图片为例)
后台上传接口Upload.php:(tp5)
?phpnamespace app home controller;使用思考控制器;类上传首先扩展{ //上传图片应用程序接口公共函数upImg() { $arr=数组(“状态”=0,“消息”=)上传失败,'文件路径'=' ');$ file=request()-file(' file ');if($file){ $info=$file-move('上传/微信/');if($ info){ $ arr[' state ']=1;$arr['msg']='上传成功;$ arr['文件路径']=$ info-getSaveName();} }返回JSON(arr美元);}}前台页面upload.wxml:
image src=' { { img path } } ' style=' width :600 rpx;高度:600 rpx '/视图按钮绑定点击=' upig '点击选择上传图/按钮/视图前台上传。js:
页面({ data : { imgpath : ' ' }),upImg:函数(e){ var=this wx。选择图像({ count : 1,//默认最多一次上传9张图片sizeType: ['原始','压缩'],//允许原图和压缩图sourceType: ['相册','相机'],//允许相册和相机成功(RES){ const tempfile path=RES . tempfile path wx。showtoast({ title : '正在上传.',icon: 'loading ',mask: true,持续时间: 500 })wx。uploadfile({ URL : ' https://www。msllws。top/Upload/upvig ',//服务器上传接口文件路径:临时文件路径[0],//文件资源路径名称:“文件”,标题: {“内容类型”:“应用程序/JSON”},成功(RES){控制台。日志(RES)如果(RES . statuscode==200){那。setdata({ imgpaths : tempfile path })} } })})演示效果:
(其实是有正在上传.效果的,手机录屏没给录上。)
查看服务器里面多了一张图片:
嗯哼~
【文件下载】wx.downloadFile
(以下载一张图片为例)
在服务器目录下放一张图片1.jpg:
download.wxml:
image src=' { { img path } } ' style=' width :600 rpx;高度:600 rpx '/查看按钮绑定点击='下载'点击下载/button/viewdownload.js:
页面({ data : { imgpaths : ' ' }),下载:函数(e){ var=this wx。显示吐司({ title : '正在下载.',icon: 'loading ',mask: true,持续时间: 500 })wx。下载文件({ URL : ' https://www。msllws。top/上传/1。jpg ',//下载地址type: 'image ',//下载的资源类型(im nage/音频/视频)成功:功能(RES){控制台。日志(RES)if(RES . statuscode==200){ var文件路径=RES . tempfile路径。setdata({ imgpaths :文件路径})} } })})演示效果:
希望本文所述对大家微信小程序开发有所帮助。