小程序生成的二进制码为什么不能转成base64?

写小程序遇到一个问题,就是后端生成小程序码通过接口二进制流获取要在小程序上显示,但我始终显示不出来。

可以确定的是接口返回的码是对的,打印的结果也是二进制文件流,[arrayBufferToBase使用文档]查了很多资料都说是这么用的,但最后一个console。log始终为空,文档上说只是停止维护并没有弃用,我的基础库是3.3.5...试了很多办法有巨佬碰到过嘛感谢(https://developers.weixin.qq.com/miniprogram/dev/api/base/wx....)
image.png
image.png

wxCodeImg().then(res => {
  console.log(res.data)
  const arrayBuffer = new Uint8Array(res.data);
  const save = wx.arrayBufferToBase64(arrayBuffer); 
  console.log(save)
})
阅读 595
1 个回答

额,你后端返回的也不是base64格式啊,你返回的是二进制流。
就直接用img标签src后端地址显示出来啊。或者使用js的new Image() 然后插入到DOM里面去。

后端对二进制流base64也需要img.src = data:image/jpeg;base64,{base64}这种前端格式引入啊。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Microsoft
子站问答
访问
宣传栏