微信小程序怎么把BASE64格式图片上传COS对象存储?

      ...
        .then(was => {
          wx.hideLoading()
          console.log(was)/*  */
          var imagedata = JSON.parse(was.result.AdvancedInfo)
          var base64image = imagedata.IdCard
          t.setData({
            Idbackimg: 'data:image/jpeg;base64,' + base64image
          })
          //  上传  对象存储   ⬇⬇⬇⬇⬇⬇???






        })

//  上传  对象存储   ⬇⬇⬇⬇⬇⬇???
              const arrayBuffer = wx.base64ToArrayBuffer(base64image)
              cos.coskey.putObject({
                Bucket: cos.Bucket,
                Region: cos.Region,
                Key: `ocr_temp/ceshi.jpg`,
                StorageClass: 'STANDARD',
                Body: arrayBuffer, // 上传文件对象
              }, function (err, data) {
                console.log('上传成功', err || data);
              })

先base64解密,然后上传就行了

给你个思路,先将base64转换成图片,再上传

//把base64转换成图片
    getBase64ImageUrl: (base64Url) {
        /// 获取到base64Data
        var base64Data = base64Url;
        /// 通过微信小程序自带方法将base64转为二进制去除特殊符号,再转回base64
        base64Data = wx.arrayBufferToBase64(wx.base64ToArrayBuffer(base64Data));
        /// 拼接请求头,data格式可以为image/png或者image/jpeg等,看需求
        const base64ImgUrl = "data:image/png;base64," + base64Data;
        /// 得到的base64ImgUrl直接给图片:src使用即可
        return base64ImgUrl;
    },


具体详情参考这个文档
https://blog.csdn.net/i_am_a_div/article/details/120724547
再参考这个文档将图片上传到COS对象存储
https://www.freesion.com/article/3304213653/

思路可以是这样,base64作为预览使用,使用方法将base64还原成图片,将图片上传到cos,即使使用先传给后端,后端也是将base64转图片,将图片上传

1.base64通过文件系统转化成二进制文件 进行上传 如果需要我可以提供代码

把base64转换成String文件,然后上传