小程序
小游戏
企业微信
微信支付
扫描小程序码分享
小程序接口返回的数据是一串乱码,如图所示,怎么转换成base64或者图片呢?目前采取的方法:
请求时设置responseType: "arraybuffer",拿到了二进制数据流,再使用wx.arrayBufferToBase64(data),转换出来的图片不显示。。。很奇怪,该怎么解决呢?
4 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
可能是因为你没有对接好,比如没有带token,或者其他问题,这些都会返回base64的值,只不过返回的有错,不能生成正确的二维码
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
小程序码都是叫后端兄弟生成的,我只需要一个url作为展示就好了,嘿嘿!
var base64 = wx.arrayBufferToBase64(res.data);
that.setData({ imgurl: "data:image/PNG;base64," + base64 })
试了,图片显示不出来的,我只是下面的setDate没有截图出来😫
兄弟,让后端帮你处理buffer数据,再返给一个url
之前是这样做的,但是现在要求后端不给生成url图片地址,只能前端转换😭😭
现在是后端解析成base64,可以了;但是又出现了新的问题了,如果传的path携带参数就生成错误的base64码,不带参数的path就可以
你可以排查一下:
当服务端解析为base64数据的时候,就手动的copy到浏览器中,看是否正常显示;
可以自己写个前端的demo, 自己通过wx.request去请求生成二维码的接口,核查一下是否正常
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
可能是因为你没有对接好,比如没有带token,或者其他问题,这些都会返回base64的值,只不过返回的有错,不能生成正确的二维码
小程序码都是叫后端兄弟生成的,我只需要一个url作为展示就好了,嘿嘿!
var base64 = wx.arrayBufferToBase64(res.data);
that.setData({ imgurl: "data:image/PNG;base64," + base64 })
试了,图片显示不出来的,我只是下面的setDate没有截图出来😫
兄弟,让后端帮你处理buffer数据,再返给一个url
之前是这样做的,但是现在要求后端不给生成url图片地址,只能前端转换😭😭
现在是后端解析成base64,可以了;但是又出现了新的问题了,如果传的path携带参数就生成错误的base64码,不带参数的path就可以
你可以排查一下:
当服务端解析为base64数据的时候,就手动的copy到浏览器中,看是否正常显示;
可以自己写个前端的demo, 自己通过wx.request去请求生成二维码的接口,核查一下是否正常