首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从Mongo提供保存的缓冲区

从Mongo提供保存的缓冲区
EN

Stack Overflow用户
提问于 2013-05-17 03:57:45
回答 1查看 2.3K关注 0票数 2

我试图提供我存储在一个蒙古族文档中的图像。我用的是快递,快递资源和猫鼬。

数据是一个JPG,存储在我的模式中的一个缓冲区字段中。看上去是正确的,因为我可以用cli读取数据。

然后我运行一个发现,抓住领域,并试图发送它。见代码:

代码语言:javascript
复制
res.contentType('jpg');
res.send(img);

我不认为这是存储问题,因为我在这里执行相同的操作:

代码语言:javascript
复制
var img = fs.readFileSync(
    __dirname + '/../../img/small.jpg'
);
res.contentType('jpg');
res.send(img);

在浏览器中,图像会出现(作为一个破损的图标)。

我想知道这是否是快递资源的问题,因为我的格式设置为json,但是在发送数据之前,我确实要重写内容类型。

抓头

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-05-19 13:47:11

我自己解决了这个问题。似乎我使用了正确的方法从express发送数据,但没有正确地存储它(棘手!)

对于任何处理图像下载并在缓冲区中管理它们的人,下面是一些使用请求包的示例代码:

代码语言:javascript
复制
request(
    {
        uri: uri,
        encoding: 'binary'
    },
    function (err, response, body)
    {
        if (! err && response.statusCode == 200)
        {
            var imgData = new Buffer(
                body.toString(),
                'binary'
            ).toString('base64');
            callback(null, new Buffer(imgData, 'base64'));
        }

    }
);

在Mongo中,需要设置一个带有缓冲区类型的文档属性,才能成功地存储它。似乎这个问题是因为我把它保存到了蒙戈。

希望这能在未来节省一些时间。=)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16601161

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档