小程序 云存储、云下载和云暂时链接 秒速五厘米 2021-07-24 17:55 483阅读 0赞 云存储 如图片: 回调函数中的this执向不同 let that =this; wx.chooseImage({ success:function(res){ wx.cloud.uploadFile({ //上传到云服务器的id cloudPath:xx+'.png', //上一个chooseImage的成功回调函数返回结果中的文件暂时路径 filePath:res.tempFilePaths[0], success:function(res2){ res2.fileID;获取上传文件的id,可直接使用 }) }, fail:function(){xxx} }) 云下载: Taro.cloud.downloadFile({ fileID:'云存储返回的fileID', success(res) { res.tempFilePath; 返回文件地址 } }) 云删除: Taro.cloud.deleteFile({ fileList:['fileID'], success(res) { console.log(res.fileList); } }) 云暂时链接: wx.cloud.getTempFileURL({ fileList: [{ fileID: 'fileID', maxAge: 60 * 60, 链接有效时间 }], success: res => { console.log(res.fileList) }, fail: err => { } }) 代码示例: uploadEvent(){ let that=this; wx.chooseImage({ success: function(res) { console.log(res); //将选中的图片上传到云服务器 wx.cloud.uploadFile({ //上传到云服务器的id cloudPath:new Date().getTime()+'.png', //上一个chooseImage的成功回调函数返回结果中的文件暂时路径 filePath:res.tempFilePaths[0], success:function(res2){ console.log(res2); let arr=that.data.imgSrc; arr.push(res2.fileID); that.setData({ imgSrc: arr }); } }) }, fail:function(res) { console.log('error'); } }) } }) Taro代码示例: import Taro from '@tarojs/taro' import { View,Text,Button,Image} from '@tarojs/components' import React,{ Component} from 'react' import { add } from '../../utils/db/index' class Game extends Component{ state={ imgs:[], cloudImgs:[], fileID:'' } componentDidMount() { Taro.cloud.init({ env: 'jeff-ssr' }) } click=()=>{ Taro.cloud.callFunction({ name: 'add', //传入的数据 data: { a: 1, b: 10, }, //成功回调,参数为云函数中的返回内容 success:function(res) { console.log(res); }, fail() { console.log('err') } }) } _add=async ()=>{ let res = await add( { name:'复仇者联盟',img:'https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=3659875041,1653589983&fm=26&gp=0.jpg'}, // {name:'蜘蛛侠',img:'https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=2665014954,1139410527&fm=26&gp=0.jpg'}, // {name:'雷神',img:'https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=1747873458,3198507694&fm=26&gp=0.jpg'}, // {name:'钢铁侠',img:'https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=3179099924,1007440925&fm=26&gp=0.jpg'}, // {name:'美国队长',img:'https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=3035539664,2279765935&fm=26&gp=0.jpg'}, ) } _chooseImage() { let that=this; Taro.chooseImage({ count:2, sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有 sourceType: ['album', 'camera','user','environment'], // 可以指定来源是相册还是相机,默认二者都有,在H5浏览器端支持使用 `user` 和 `environment`分别指定为前后摄像头 success: function (res) { // 返回选定照片的本地文件路径列表,tempFilePath可以作为img标签的src属性显示图片 var tempFilePaths = res.tempFilePaths; that.setState({ imgs:tempFilePaths }) } }) } _cloudSave=(e,imgPath)=> { let that=this; console.log(imgPath); Taro.cloud.uploadFile({ cloudPath:new Date().getTime()+'.jpg', filePath:imgPath, success:(res)=> { console.log('ww') that.setState({ fileID:res.fileID }) }, fail() { console.log('ddd'); } }) } _cloudDown=()=>{ let that=this; Taro.cloud.downloadFile({ fileID:that.state.fileID, success(res) { let cloudImgs=that.state.cloudImgs; cloudImgs.push(res.tempFilePath); that.setState({ cloudImgs }) } }) } _cloudDelete=()=>{ Taro.cloud.deleteFile({ fileList:['fileID'], success(res) { console.log(res.fileList); } }) } render() { const { imgs,cloudImgs}=this.state return( <View> <Text>game</Text> <Button onClick={ this.click}>测试云函数</Button> <Button onClick={ this._add}>添加云数据库</Button> <Button onClick={ this._chooseImage.bind(this)}>调用本地相册</Button> <Button onClick={ (e)=>{ this._cloudSave(e,imgs[0])}}>调用云存储</Button> <Button onClick={ this._cloudDown}>调用云下载</Button> <Button onClick={ this._cloudDelete}>调用云删除</Button> { cloudImgs.map((item,index)=>{ return( <Image src={ item}/> ) }) } </View> ) } } export default Game
相关 云存储 FTPS是一种对常用的 [文件传输协议][Link 1](FTP)添加 [传输层安全][Link 2](TLS)和安全套接层(SSL)加密协议支持的扩展协议。 通过 FTP/ 以你之姓@/ 2023年10月11日 13:39/ 0 赞/ 40 阅读
相关 小程序云开发 问题解决 关于构建npm找不到包的解决办法: 1. 进入小程序根目录,打开cmd,输入:npm init 2. 输入命令之后一直点回车 3. 输入命令:npm i - 日理万妓/ 2023年06月15日 11:09/ 0 赞/ 227 阅读
相关 爬虫-网易云音乐视频下载链接 查看网络请求,如下图,在左边箭头输入框输入mp4,右边链接即为真实的下载链接,不过这个链接有时效性。问题是怎么自己构造这样完整的链接或者能否在网页中找到? ![在这里插入图 小灰灰/ 2023年03月13日 03:46/ 0 赞/ 159 阅读
相关 小程序云开发 背景 -------------------- 无需服务器,云函数实现服务器接口逻辑 无需数据库,云开发自动集成数据库,这是类似mongdb(hash存储) 男娘i/ 2022年01月12日 02:33/ 0 赞/ 319 阅读
相关 小程序云开发 一. 云开发的认识 1. 1. 什么是云开发 2. 云开发和传统模式的区别 3. 三大基本功能的支持认识 4. 开通云开发二.云数据库 2. 桃扇骨/ 2021年12月14日 09:27/ 0 赞/ 467 阅读
相关 小程序云开发 一. 云开发的认识 1. 1. 什么是云开发 ![20190705143917677.png][] 开发者可以使用云开发开发微信小程序、小游戏,无需搭建服务 冷不防/ 2021年11月27日 02:34/ 0 赞/ 389 阅读
相关 小程序云开发 一. 云开发的认识 1. 1. 什么是云开发 ![20190705143917677.png][] 开发者可以使用云开发开发微信小程序、小游戏,无需搭建服务 「爱情、让人受尽委屈。」/ 2021年11月26日 14:34/ 0 赞/ 497 阅读
相关 小程序云开发 > 小程序我又来入坑啦!!!! 一:上手 ![fdd239c3b4d9ca5411fa5000c784b9a8.png][] 二: 云数据库操作 2.1 初始 蔚落/ 2021年09月03日 03:28/ 0 赞/ 476 阅读
相关 小程序 云存储、云下载和云暂时链接 云存储 如图片: 回调函数中的this执向不同 let that =this; wx.chooseImage 秒速五厘米/ 2021年07月24日 17:55/ 0 赞/ 484 阅读
还没有评论,来说两句吧...