微信分享base64图片

从数据接口直接请求到图片的base64格式

一开始的思路是base64转二进制,再存到本地

wx.base64ToArrayBuffer和wx.createBufferURL

wx.base64ToArrayBuffer停止维护了,但是还能用

wx.createBufferURL在开发工具上转为http://127.0.0.1:xx/xx,而真机返回的是wxblob/xx。

模拟器返回的路径点击可以打开图片,但真机的不行。BUT,在调用图片分享方法时,传入url不能调起分享功能

实际解决思路:

步骤一,base64格式图片直接存到本地;步骤二、使用指定的本地路径分享图片

1、截取base64图片的后部分,去除data:image/png;base64,前缀

let baseData = res.data.split(',')[1]

2、使用文件管理器将文件存入本地

var fs = wx.getFileSystemManager();

fs.writeFile({

          filePath: wx.env.USER_DATA_PATH + '/pic6.png',//随意图片名称

          data: baseData ,//截取后的base64数据

          encoding: 'base64',

          success: (res) => {

//3、保存成功后,使用指定路径,分享图片

            wx.showShareImageMenu({

              path: wx.env.USER_DATA_PATH + '/pic6.png',//和保存路径一样

              style: 'v2',

              needShowEntrance: true,

              entrancePath: "pages/share/share"

            })

          }

        })


©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容