小程序云开发-存储

上传文件

在微信开发者工具中,点击【云开发】,进入云开发控制台,选中【存储】
在这里插入图片描述
第一种,简单方便的。直接从文件管理器将要上传的文件夹拖入控制台即可上传,支持拖入多个文件或文件夹。
第二种,点击【上传文件】,在文件管理器中选择需要上传的文件。
第三种,用小程序的代码来实现。

点击button按钮之后,触发事件。
事件第一步是调用小程序内置的 chooseImage 方法,作用是上传本地图片,返回一个小程序临时文件路径。第二步调用 wx.cloud.uploadFile ,给文件 写个路径或者起个文件名,并使用第一步中的临时文件路径。之后便能成功上传一张图片。因为用的是 chooseImage 方法,所以只能选择图片。若想上传其他文件,就需要调用与之对应的方法。

<button bindtap="upFile" plain="true">上传文件</button>
upFile(){
    wx.chooseImage({
      count: 1,
      sizeType:['original','compressed'],
      sourceType:['album','camera'],
      success(res){
        const tempFilePaths=res.tempFilePaths
        wx.cloud.uploadFile({
          cloudPath: 'newFile/diyige.jpg', // 上传至云端的路径
          filePath: tempFilePaths[0], // 小程序临时文件路径
          success: res => {
            // 返回文件 ID
            console.log(res)
          },
          fail: console.error
        })
      }
    })
    /* 写法二
    wx.chooseImage({
	  success: chooseResult => {
	    // 将图片上传至云存储空间
	    wx.cloud.uploadFile({
	      // 指定上传到的云路径
	      cloudPath: 'my-photo.png',
	      // 指定要上传的文件的小程序临时文件路径
	      filePath: chooseResult.tempFilePaths[0],
	      // 成功回调
	      success: res => {
	        console.log('上传成功', res)
	      },
	    })
	  },
	})
    */
  }

在这里插入图片描述
上述几种方法。无论哪一种,成功上传文件文件之后都会自动生成一个 FileID,这个ID是唯一的,往后对文件进行处理时,都会使用这个ID。
点击圆圈里的文件图标便能查看详细信息,信息中的下载地址对应着一个网页地址,用浏览器打开可以看见自己上传的文件,说明这个文件已经上传成功,只要通过这个地址可以被任何人访问到。

换取临时链接

这个API能获取到临时的链接,有效期为两个小时。有效期过了之后重新获取一次即可。这个链接跟上述的下载地址对应的链接是不一样的。

<button bindtap="getTempURL" plain="true">获取临时链接</button>
getTempURL(){
    wx.cloud.getTempFileURL({
      fileList:['cloud://cloud1-5gm1st7bd8379afb.636c-cloud1-5gm1st7bd8379afb-1305359995/diyige.jpg'],
      success:res=>{
        console.log(res.fileList[0])
      },
      fail:console.error
    })
  }

在这里插入图片描述

删除文件

fileList 里面对应的是文件ID。
点击【删除文件】的button按钮就可以删除文件

<button bindtap="delFile" plain="true">删除文件</button>
delFile(){
    wx.cloud.deleteFile({
      fileList:['cloud://cloud1-5gm1st7bd8379afb.636c-cloud1-5gm1st7bd8379afb-1305359995/reg_bg_min.jpg'],
      success:res=>{
        console.log(res)
      },
      fail:console.error
    })
  }

下载文件

wx.cloud.downloadFile({
  fileID: 'cloud://cloud1-5gm1st7bd8379afb.636c-cloud1-5gm1st7bd8379afb-1305359995/diyige.jpg', // 文件 ID
  success: res => {
    // 返回临时文件路径
    console.log(res.tempFilePath)
  },
  fail: console.error
})

这个下载的API没试过,用的不多。
以上几个对存储的文件的使用和修改,都是将 fileID 写死的。而往后在使用的时候,大多写成变量的形式,灵活获取要用到的文件。

官网文档:https://developers.weixin.qq.com/miniprogram/dev/wxcloud/guide/storage/api.html

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值