在 mongodb 中存储图像



我正在尝试在下载后将图像存储在mongo中

这是我的代码,它会导致损坏的图像存储在数据库中。

request('http://test.jpg', function (error, response, image) {
    db.images.insert(
        {
            file_name: 'test.jpg',
            image: new Buffer(image)
        },
        function(err){
           //mongojs callback
        }
    );
});

请注意,我正在使用mongojs模块并将图像存储在常规文档中作为BinData类型。

此外,如果我将图像写入文件,读取它然后将图像保存到数据库,则没有损坏。但我不想这样做,因为我打算完全避免文件系统。

我很漂亮,这与编码或缓冲区有关,但我对这些了解不足以解决我的问题。

如果您不想使用像gridfs这样的适当的图像存储解决方案,则可以对图像进行base64编码。

如何在 JavaScript 中将字符串编码为 Base64?

这给了你一个可以存储在 mongo 中的字符串。

相关内容

  • 没有找到相关文章

最新更新