【发布时间】:2014-05-08 15:02:12
【问题描述】:
我正在上传图片,并使用 Node.js 和 mongoose 将它们加载回浏览器。当用户注册时,我可以让他们上传图片。然后我将图像存储到 mongodb 中。下面,图片是从客户端发送的,图片是我发送到服务器的。
var match = /data:([^;]+);base64,(.*)/.exec(picture);
var image = {
data: new Buffer(match[2], "base64"),
contentType: match[1]
};
在使用缓冲区转换之前,格式为:
iVBORw0KGgoAAAANSUhEUgAAAJwAAACgCAIAAAB2YpLMAAAYT2..==
转换后的image.data是这样的格式:
<Buffer 89 50 4e 47 0d 0a 1a 0a 00 00>
但是,当我尝试将图像检索回客户端时,html 将是:
data:image/png;base64,105,86,66,79,82,119,48,75,71,103,...
它无法在浏览器上加载图像,我想我需要以这种格式:
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJwAAACgCAIAAAB2YpLMAAAYT2...==
我该如何解决这个问题?
提前致谢,
【问题讨论】:
标签: javascript html image node.js mongodb