mongodb存储图片和文件实践 mongodb储存文件

导读:MongoDB是一款非常流行的文档数据库,它不仅可以存储结构化数据,还可以存储文件 。本文将介绍如何在MongoDB中储存文件 。
1. 创建GridFS集合
GridFS是MongoDB用于存储和检索大型二进制文件的协议 。首先,我们需要创建一个GridFS集合来存储文件 。可以使用以下命令:
```
db.createCollection('fs.files');
db.createCollection('fs.chunks');
2. 上传文件
要上传文件 , 我们需要使用GridFS API 。以下是一个示例代码,它将上传名为“example.txt”的文件 。
var fs = require('fs');
var Grid = require('gridfs-stream');
var mongoose = require('mongoose');
var conn = mongoose.connection;
Grid.mongo = mongoose.mongo;
conn.once('open', function () {
console.log('open');
var gfs = Grid(conn.db);
var writestream = gfs.createWriteStream({
filename: 'example.txt'
});
fs.createReadStream('/path/to/example.txt').pipe(writestream);
});
【mongodb存储图片和文件实践 mongodb储存文件】3. 下载文件
要下载文件,我们可以使用GridFS API中的find方法 。以下是一个示例代码,它将下载名为“example.txt”的文件 。
var readstream = gfs.createReadStream({
readstream.pipe(fs.createWriteStream('/path/to/downloaded.txt'));
4. 删除文件
要删除文件,我们可以使用GridFS API中的remove方法 。以下是一个示例代码,它将删除名为“example.txt”的文件 。
gfs.remove({
}, function (err) {
if (err) return handleError(err);
console.log('success');
总结:MongoDB提供了方便的API来储存、检索和删除大型二进制文件 。通过使用GridFS集合,我们可以轻松地在MongoDB中存储文件 。
1.MongoDB
2.GridFS
3.储存文件
4.API
5.删除文件

    推荐阅读