从MongoDB检索/发布图像(猫鼬)

沙米尔·阿卜杜拉(Shameel Abdullah)

过去一段时间以来,我一直在尝试使用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中?任何帮助,我们将不胜感激。

沙米尔·阿卜杜拉(Shameel Abdullah)

当我第一次进入Web开发时,我问了这个问题。回到5年后,我的方法肯定是错误的。我试图将自己的图像存储在mongodb中,当时我应该将它们存储在诸如S3之类的存储服务中,然后仅将指向这些图像的URL存储在mongodb中。希望这对遇到这个问题的人有所帮助!

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章