MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Stocker un fichier dans mongodb en utilisant node.js

Si la taille de votre fichier dépasse 16 Mo, la taille de document maximale de Mongo, vous devez utiliser gridFS si vous souhaitez stocker les fichiers dans votre base de données.

Il y a une liste très utile des raisons d'utiliser gridFS ici :http://docs.mongodb.org/manual/faq/developers/#faq-developers-when-to-use-gridfs

En termes d'implémentation dans le nœud (si vous utilisez le pilote nativ mongo) :

var  mongodb = require('mongodb')
   , MongoClient = mongodb.MongoClient
   , Grid = mongodb.Grid //use Grid via the native mongodb driver
   ;

Une fois que vous avez configuré votre connexion, lorsqu'il s'agit d'écrire le fichier dans gridFs

var grid = new Grid(db, 'fs'); //db being a handle to your database

var buffer = //read the file in to a buffer

//write the buffer out to mongo
grid.put(buffer, {metadata:{category:'text'}, content_type: 'text'}, function(err, fileInfo) {
 if(err) {
   //handle any errors here
 }
});