云函数进行云存储
发布于 5 年前 作者 taoming 10662 次浏览 来自 问答

我进行云函数上传图片进行云存储,云函数调用成功,云存储中也有列表,可是图片的文件流好像没有上传成功,有哪位大神帮忙看看是咋回事

// 云函数入口文件

const cloud = require(‘wx-server-sdk’)

cloud.init()

exports.main = async (event, context) => {

 

 try {

   return await cloud.uploadFile({

     cloudPath: event.path,//云存储路径

     fileContent: event.file,//云存储文档流

   })

 } catch (e) {

   return e

 }

 

}

//云函数调用

upImg(that,upLoadImg){

   var fileName = ‘test’

   var imgFile = upLoadImg[0]

   var filePath = imgFile.path;

   var dateJson = Util.formatTimeJson(new Date())//这里是获取上传日期时间的json格式

   const cloudPath = fileName+’/’+dateJson +filePath.match(/\.[^.]+?$/)[0]

   wx.cloud.callFunction({

     name: ‘add-file’,

     data: {

       path: cloudPath,//云存储路径

       file: filePath,//云存储文档流

     },

     success: res => {

       console.log(res)

     }

   })

 },

//文件路径和文档流如下

//返回结果如下

//数据库云存储中查看

完全读不出来,我把它下载下来,也读取不到文件

 

求帮助

1 回复

 cloud.uploadFile({

     cloudPath: event.path,//云存储路径

     fileContent: event.file,//云存储文档流

   })

filecontent 需要是文件内容

但是你调用时

var filePath = imgFile.path;

传递的是文件路径。

你可以试试把这个 jpg 文件用文本编辑器打开,看看是不是里面内容是个路径字符串。

回到顶部