0
我设法将图像保存到类型为Buffer的mongoDB。与图像一起是当前登录用户的用户名。现在,我的问题是将图像显示在客户端。非常感谢,如果它有一个像“显示图像,其中用户名='currentUser_username'”。我还有一个保存图像的“上传”文件夹。请帮忙。我是nodeJS的新手。请在回答中详细说明。谢谢Node.js - 从MongoDB显示图像
我设法将图像保存到类型为Buffer的mongoDB。与图像一起是当前登录用户的用户名。现在,我的问题是将图像显示在客户端。非常感谢,如果它有一个像“显示图像,其中用户名='currentUser_username'”。我还有一个保存图像的“上传”文件夹。请帮忙。我是nodeJS的新手。请在回答中详细说明。谢谢Node.js - 从MongoDB显示图像
要发送图像到客户端,您需要保存图像二进制数据,图像内容类型。
您的模式结构应该是这样的。
var demoSchema = new mongoose.Schema({
imageData : { type: Buffer },
imageType : {type: String },
imageName : {type: String }
})
mongoose.model('Demo', demoSchema)
将图像保存到数据库时,请保存内容类型(必须)。
var data = fs.readFileSync(incomingImage.path);
var input = new Demo():
input.image = new MongoDb.Binary(data);
input.imageType = incomingImage.type;
input.imageName = incomingImage.name;
input.save();
从DB中检索并发送contentType并将缓冲区作为二进制提及客户端。
Demo.findById(req.params.id, function (error, result) {
res.contentType(result.imageType);
res.end(result.image.buffer, "binary");
});
如果你需要一些简单的细节见here
非常感谢你的回答。这些都有帮助。我会尝试所有这些:) –
交一些代码或到目前为止你已经尝试了逻辑... –
只需把该URL的',你是好去。 – ickyrr