溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

微信小程序如何實(shí)現(xiàn)文件上傳、下載操作

發(fā)布時(shí)間:2021-07-19 09:37:31 來源:億速云 閱讀:528 作者:小新 欄目:web開發(fā)

這篇文章將為大家詳細(xì)講解有關(guān)微信小程序如何實(shí)現(xiàn)文件上傳、下載操作,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

具體如下:

前面介紹了微信小程序登錄API與獲取用戶信息操作。這里再來介紹一下文件的上傳與下載操作。

【文件上傳】wx.uploadFile

后臺(tái)上傳接口Upload.php:(tp5)

<?php
namespace app\home\controller;
use think\Controller;
class Upload extends First
{
  //上傳圖片API
  public function upImg() {
  	$arr = array('state'=>0,'msg'=>'上傳失敗','filepath'=>'');
    $file = request()->file('file');
    if($file){
      $info = $file->move('upload/weixin/');
      if ($info) {
        $arr['state'] = 1;
        $arr['msg'] = '上傳成功';
        $arr['filepath'] = $info->getSaveName();
      }
    }
    return json($arr);
  }
}

前臺(tái)頁面upload.wxml:

<image src='{{imgpath}}' style='width:600rpx; height:600rpx' />
<view>
 <button bindtap="upImg">點(diǎn)擊選擇上傳圖</button>
</view>

前臺(tái)upload.js:

Page({
 data: {
  imgpath: ''
 },
 upImg: function (e) {
  var that = this
  wx.chooseImage({
   count: 1, // 默認(rèn)最多一次上傳9張圖片
   sizeType: ['original', 'compressed'], // 允許原圖和壓縮圖
   sourceType: ['album', 'camera'], // 允許相冊(cè)和相機(jī)
   success(res) {
    const tempFilePaths = res.tempFilePaths
    wx.showToast({
     title: '正在上傳...',
     icon: 'loading',
     mask: true,
     duration: 500
    })
    wx.uploadFile({
     url: 'https://www.msllws.top/Upload/upImg', //服務(wù)器上傳接口
     filePath: tempFilePaths[0], //文件資源路徑
     name: 'file',
     header: {
      'Content-Type': 'Application/json'
     },
     success(res) {
      console.log(res)
      if (res.statusCode == 200){
       that.setData({
        imgpath: tempFilePaths
       }) 
      }
     }
    })
   }
  })
 }
})

演示效果:

微信小程序如何實(shí)現(xiàn)文件上傳、下載操作

(其實(shí)是有正在上傳...效果的,手機(jī)錄屏沒給錄上。。)

微信小程序如何實(shí)現(xiàn)文件上傳、下載操作

微信小程序如何實(shí)現(xiàn)文件上傳、下載操作 
查看服務(wù)器里面多了一張圖片:

微信小程序如何實(shí)現(xiàn)文件上傳、下載操作

嗯哼~

微信小程序如何實(shí)現(xiàn)文件上傳、下載操作

 【文件下載】wx.downloadFile

(以下載一張圖片為例)

在服務(wù)器目錄下放一張圖片1.jpg:

微信小程序如何實(shí)現(xiàn)文件上傳、下載操作

微信小程序如何實(shí)現(xiàn)文件上傳、下載操作

download.wxml:

<image src='{{imgpath}}' style='width:600rpx; height:600rpx' />
<view>
 <button bindtap="download">點(diǎn)擊下載</button>
</view>

download.js:

Page({
 data: {
  imgpath: ''
 },
 download: function (e) {
  var that = this
  wx.showToast({
   title: '正在下載...',
   icon: 'loading',
   mask: true,
   duration: 500
  })
  wx.downloadFile({
   url: 'https://www.msllws.top/upload/1.jpg', //下載地址 
   type: 'image', //下載的資源類型(imnage/audio/video)
   success: function (res) {
    console.log(res)
    if (res.statusCode == 200) {
     var filepath = res.tempFilePath
     that.setData({
      imgpath: filepath
     })
    }
   }
  })
 }
})

演示效果:

微信小程序如何實(shí)現(xiàn)文件上傳、下載操作

微信小程序如何實(shí)現(xiàn)文件上傳、下載操作 微信小程序如何實(shí)現(xiàn)文件上傳、下載操作

關(guān)于“微信小程序如何實(shí)現(xiàn)文件上傳、下載操作”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI