过去一段时间以来,我一直在尝试使用mongodb中的图像。我一直在看的每个地方都说使用GridFS,因为每个文档的大小限制为16mb。但是,每个要存储的文件ID均小于16mb。我目前这样存储
var testChamp = new Champion ({
name: "Aatrox",
img: fs.readFileSync("D:/CounterMe/Aatrox_0.jpg"),
contentType: "jpg"
});
testChamp.save(function() {
console.log("Saved");
})
在我的架构中:
name: String,
img: Buffer,
contentType: String `
在mongoshell中找到此信息将以cmd的形式显示大量行,因此Im不确定im能否正确存储它。如果我是,我不知道如何将其插入到我的html中。我知道如何检索名称,并将其作为对象传递:
app.get("/", function(req, response) {
Champion.find(function(err, champs) {
response.render("index", {
champ: champs[0]
});
});
});
但是,一旦检索到champs [0] .img,我不确定该如何处理。我应该如何将img传递到HTML中?任何帮助,我们将不胜感激。
当我第一次进入Web开发时,我问了这个问题。回到5年后,我的方法肯定是错误的。我试图将自己的图像存储在mongodb中,当时我应该将它们存储在诸如S3之类的存储服务中,然后仅将指向这些图像的URL存储在mongodb中。希望这对遇到这个问题的人有所帮助!
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句