【问题标题】:MongoDB Gridfs NODE display imageMongoDB Gridfs NODE 显示图片
【发布时间】:2015-07-16 11:02:43
【问题描述】:

我正在使用 GridFS 在 MongoDB 中存储来自 Angular 应用程序的图像。从数据库获取图像时出现问题。我只能在 iexplorer 和 postman 中显示图像。在 chrome、firefox 中,它看起来像损坏的图像。 有没有办法直接从数据库中以角度显示图像?我正在使用快递。并尝试插入这样的图像:<img src="upload/55a75dbb749062041b4c84ba"/>

我的路由器

  router.get('/upload/:objectId',function(req, res){

   var options = {
        _id : req.params.objectId
    };

    gfs.exist(options, function(err, exists) {
        if(!exists) {
            res.status(404);
            res.end();
        } else {
             res.set('Content-Type', 'image/jpeg');
            var readstream = gfs.createReadStream(options);
            readstream.pipe(res);
        }
    });

});

【问题讨论】:

    标签: node.js mongodb


    【解决方案1】:

    解决了,

        router.get('/upload/:image',function(req, res){
    
        try{
            var readstream = gfs.createReadStream({ filename: req.params.image});
            res.set('Content-Type', 'image/jpeg');
            readstream.pipe(res);  
    
        }
        catch (err) {
            log.error(err);
            return next(errors.create(404, "File not found."));
        }
    
    
    });
    

    html:

     <img src="/usr-rest/users/upload/here_goes_id">
    

    【讨论】:

      猜你喜欢
      • 2016-04-27
      • 1970-01-01
      • 1970-01-01
      • 2016-04-26
      • 1970-01-01
      • 2011-07-17
      • 2012-11-15
      • 2014-03-21
      • 2018-07-14
      相关资源
      最近更新 更多