node.js+mongoose读取mongodb中GridFS存储文件

    最近在用node.js写一个图片服务,为了便于管理所以想使用mongodb数据库存储图片,链接mongodb数据库用的是

mongoose,正式实现前做了一些试验,用以验证思路是否可行。以下为试验步骤:

1.使用mongod数据库自带的mongofiles命令导入一张图片

 

    C:\Users\Sky>mongofiles -h localhost -port 27017 -d image_bank --local E:\\photo.jpg  put photo.jpg

 

2.node.js+mongoose读取图片

 

router.get('/image',function(req,res){var mongoose = require('mongoose');
    mongoose.connect("mongodb://localhost/image_bank");var grid = require('gridfs-stream');
    var db=mongoose.connection.db;var gfs=grid(db,mongoose.mongo);
    var gfs_options = {
        filename: 'E:\\\\photo.jpg'
    };
    try{var readstream = gfs.createReadStream(gfs_options);
        readstream.pipe(res);
    }catch(err){
        console.log(err);
    }
});

你可能感兴趣的:(node.js,mongod,GridFS,mongoose)