我正在用HTML / JavaScript编写网页。我正在使用AJAX从后端下载图像。该图像表示为原始字节数组,而不是URL,因此我不能使用标准<img src="{url}">方法。
如何向用户显示上述图像?
我正在用HTML / JavaScript编写网页。我正在使用AJAX从后端下载图像。该图像表示为原始字节数组,而不是URL,因此我不能使用标准<img src="{url}">方法。
如何向用户显示上述图像?
Answers:
尝试将此HTML代码段放入您提供的文档中:
<img id="ItemPreview" src="">
然后,在JavaScript方面,您可以src使用所谓的Data URL动态修改图像的属性。
document.getElementById("ItemPreview").src = "data:image/png;base64," + yourByteArrayAsBase64;
或者,使用jQuery:
$('#ItemPreview').attr('src', `data:image/png;base64,${yourByteArrayAsBase64}`);
这假定您的图像以PNG格式存储,这非常流行。如果您使用其他图像格式(例如JPEG),请相应地修改URL中的MIME类型("image/..."部分)。
类似问题:
[137,80,78,71,13,10,26,10,0,...],则可以使用以下行:document.getElementById("ItemPreview").src = "data:image/png;base64," + btoa(String.fromCharCode.apply(null, new Uint8Array([137,80,78,71,13,10,26,10,0,...])));