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