从base64编码的字符串显示图像

时间:2015-08-14 07:22:54

标签: javascript html base64

我需要在图片标签中显示图片。

我使用一个简单的XMLHttpRequest,它返回一个arrayBuffer中的图像数据。响应数据被发送到以下函数以对其进行base64编码:

var base64EncodedImage = arrayBufferToBase64(response);

arrayBufferToBase64 = function(buffer) {
  var binary = '';
  var bytes = new Uint8Array( buffer );
  var len = bytes.byteLength;
  for (var i = 0; i < len; i++) {
     binary += String.fromCharCode( bytes[ i ] );
  }
 return window.btoa(binary);
}

然后我将它分配给我的图片标签上的src属性:

this.imageTag.src = 'data:image/jpeg;base64,' + base64EncodedImage;

...并且没有图像出现。我已经尝试在二进制数据上使用一堆不同的在线编码器,只需将结果复制粘贴到代码中(如果它是window.btoa函数,那就搞乱了)但是没有运气

我犯了一个愚蠢的错误(或者错过了一步),或者这看起来应该有效吗?

任何建议都赞赏!

0 个答案:

没有答案