美文网首页
小程序云函数上传图片

小程序云函数上传图片

作者: hao_developer | 来源:发表于2022-07-28 10:25 被阅读0次

\color{red}{图片小于5兆}\目前测试是这样的,有不对的地方或有更好的方法请留言

云函数

// 云函数入口文件
const cloud = require('wx-server-sdk')
cloud.init()

// 云函数入口函数
exports.main = async (event, context) => {
  return await cloud.uploadFile({
    cloudPath: event.path,
    fileContent: new Buffer.from(event.file, 'base64')
  }).then(res =>{
    console.log('文件上传成功',res);
    res.msg = '图片上传成功';
    return res;
  }).catch(err =>{
    console.log('文件上传失败',err);
    err.msg = '图片上传失败';
    return err;
  })
}

js

wx.chooseMedia({
      success: (res) => {
        const tempFilePath = res.tempFiles[0].tempFilePath;
        console.log('本地图片路径:',res);
        wx.getFileSystemManager().readFile({
          filePath: tempFilePath, //选择图片返回的相对路径
          encoding: 'base64', //编码格式
          success: (_res) => {
            console.log('base64转化成功',_res);
            wx.cloud.callFunction({
              name: 'uploadFile',
              data: {
                path: 'user_photo/demo.png',
                file: _res.data,
              },
              success: (res) => {
                console.log('图片上传成功', res);
              },
              fail: (err) => {
                console.log('图片上传失败', err);
                wx.showToast({
                  icon: 'none',
                  title: '图片过大,请重新选择',
                })
              }
            })
          },
          fail:(_err) =>{
            console.log('base64转化失败',_err);
          }
        });
      }
    })

相关文章

网友评论

      本文标题:小程序云函数上传图片

      本文链接:https://www.haomeiwen.com/subject/zpatwrtx.html