当前位置: 首页 > news >正文

uniapp微信小程序下载base64图片流或https图片

 常规https的图片下载是这样的

const urlPath = 'https://test/logo.png'
uni.downloadFile({url: urlPath,success(res){// 这时会产生一个临时路径,在应用本次启动期间可以正常使用。if (res.statusCode == 200) {// 需要将图片保存到相册uni.saveImageToPhotosAlbum({filePath: res.tempFilePath, // 图片文件路径,可以是临时文件路径也可以是永久文件路径,不支持网络图片路径success(res){uni.showToast({title: '保存成功',icon: 'none'})// 如果保存成功需要打开查看,请使用以下方法,同时也支持打开文件uni.openDocument({filePath: res.savedFilePath,success(res){},fail(err){uni.showToast({title: '手机不支持该文件类型,请安装wps或office应用',icon: 'none'})}})},fail(err){uni.showToast({title: '图片保存失败',icon: 'none'})}})} else {uni.showToast({title: '下载失败,请稍后再试',icon: 'none'})}},fail(err) {uni.showToast({title: '下载失败,请稍后再试',icon: 'none'})}
})

下面来说一下后端返回base64的文件流,是如何下载的

必须把返回的流去掉这一部分:data:image/png;base64,否则下载不了

如我自己的流:

data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAACgCAIAAABhQAIFAAACaklEQVR42u3aUXLCMAwEUO5/6fYKMNLKcvL2k4E08UsHsfHnTy7PxxIgFISCEKEgFISCEKEgFISCEKEgFISCEKEgFISCEKG8h/ATyK9/q3KeXZ+dXAeECBEiRLiXsPQ9/MXSVD5bec+GdUCIECFChPcR/vp1XRlnKsfvGjcm1wEhQoQIEb6LsOv1xHsQIkSIECHCk+NM18/nyVsQIUKECBG+i3Cy5u76qb7t9kKIECFChPcRTi7f5tftYEOIECHCdxFOJnHZlUfNG5cIIUKECBHOEybGljRV5ZiTIxhChAgRIryb8FQFnN4ulRidECJEiBDhcwi7Rp7KElSOmR5DBioChAgRIkS4tOY+tTWoi3Pyce7SR74IESJEiLCx5k4fp6vmXlhhI0SIECHCpYSJyjtx2ZO3xanHAAgRIkSIcNfzwlMVdtfWpq5KYXJkQ4gQIUKEZwgT40NiS1J6+1P6sTNChAgRItxLOLkEiUfHm6t5hAgRIkR4H2Hip3e6Ou+qudNjF0KECBEivIMwTV45/mRln6g7ECJEiBDh3YTpCji9rF1J/EsgRIgQIcK7CRtPvb2G7qrjh6twhAgRIkR4gDCdyhKn+RO3OEKECBEivI8w/ZU+uSWpcg6JLcIIESJEiPA+wsTYkq4LTtXWIVqECBEiRLiIcLJW3jCSdI1pCBEiRIgQYXUk6arLE9XBxFMBhAgRIkT4bMKucWOSuVJNIESIECHCuwnTt0LiHCavMXQtCBEiRIjwMOEtdfDkcexgQ4gQIcLnE8qqIEQoCAUhQkEoCAUhQkEoCAUhQkEoCAUhQkEoCAUhQrk0/1j3Eulg4ZAoAAAAAElFTkSuQmCC
downImg(){var byte=this.codeImg.replace("data:image/png;base64,","");const fs = uni.getFileSystemManager(); //全局唯一的文件管理器var number = Math.random();fs.writeFile({filePath: wx.env.USER_DATA_PATH + '/code' + number + '.png',data: byte,encoding: "base64",success(res) {uni.saveImageToPhotosAlbum({ //保存为png格式到相册filePath: wx.env.USER_DATA_PATH + '/code' + number + '.png',success: function (res) {uni.showToast({ title: "下载成功", icon: "success" });},fail: function (err) {console.log(err)}})}})},

http://www.lryc.cn/news/260731.html

相关文章:

  • 数据结构 | Log-Structured Merge Tree (LSM Tree)
  • QEMU源码全解析 —— virtio(9)
  • 金蝶云星空协同开发环境应用内执行单据类型脚本
  • 矩阵理论及其应用邱启荣习题3.5题解
  • Java面试题(每天10题)-------连载(49)
  • python——数据类型
  • hive中如何求取中位数?
  • 在C#中异步编程
  • 微服务保护--Feign整合Sentinel
  • 二进制to十六进制
  • Logistic 回归算法
  • ubuntu安装详细步骤
  • 力扣5. 最长回文子串
  • 肆[4],函数VectorToHomMat2d/AffineTransPoint2d
  • 下载文件 后端返回给前端 response header 响应头
  • lvs负载均集群
  • luttuce(RedisTempate)实现hash expire lua脚本
  • 【Xamarin】WebView连接局域网自动跳转外部浏览器问题的解决
  • 【Unity动画】实现不同的肢体动作自由搭配播放Layer+Avatar Mask
  • 将0x06(16进制)转换为二进制
  • 考PRINCE2有用么?有PMP证书了还需要考PRINCE2吗?
  • 06进程间关系-学习笔记
  • Vue的动画方式有几种
  • PyTorch: 基于【VGG16】处理MNIST数据集的图像分类任务【准确率98.9%+】
  • 【lombok】从easyExcel read不到值到cglib @Accessors(chain = true)隐藏的大坑
  • 1-SaaS通识
  • Spring Boot实现接口幂等
  • ShopsN commentUpload 文件上传漏洞复现
  • 【Qt5】ui文件最后会变成头文件
  • 数组笔试题解析(下)