grn-skipper-gridfs
v0.5.3
Published
A skipper adapter to allow uploading files to MongoDB's GridFS
Downloads
4
Maintainers
Readme
GridFS Filesystem Adapter
GridFS adapter for receiving upstreams. Particularly useful for handling streaming multipart file uploads from the Skipper body parser.
========================================
Installation
$ npm install skipper-gridfs --save
Also make sure you have skipper installed as your body parser.
Skipper is installed by default in Sails v0.10.
========================================
Usage
req.file('avatar')
.upload({
adapter: require('skipper-gridfs'),
uri: 'mongodb://jimmy@[email protected]:27017/coolapp.avatar_uploads'
}, function whenDone(err, uploadedFiles) {
if (err) return res.negotiate(err);
else return res.ok({
files: uploadedFiles,
textParams: req.params.all()
});
});
For more detailed usage information and a full list of available options, see the Skipper docs, especially the section on "Uploading to GridFS".
One important adapter-specific option to note is uri
:
| Option | Type | Details |
|----------- |:----------:|---------|
| uri
| ((string)) | An optional parameter if you wish the enter your mongodb credentials as a URI, e.g. mongodb://username:password@localhost:27107/databasename.bucket
. (Check mongo client URI syntax).|
| connectOpts
| ((object)) | An optional parameter if you wish the enter your mongodb connection options credentials as an object e.g. { server: { ssl: true, sslCA: 'CA_CERT', sslKey: 'SSL_KEY', sslCert: 'SSL_CERT' }, replSet: { rs_name: 'rs0', ssl:true} }
(Check mongo client connection options).|
Note: Please use
uri
instead of passing in separate options forusername
,password
,host
,port
,dbname
andbucket
In addition to the regular file adapter methods, these additional methods are also available:
Method | Description
----------- | ------------------
readLastVersion()
| Get the most recent version of a file in GridFS
readVersion()
| Get a specific version of a file in GridFS
These methods mimic get_last_version and get_version from pymongo's gridfs implementation.
========================================
Contributions
are welcomed :ok_hand:
See ROADMAP.md.
Also be sure to check out ROADMAP.md in the Skipper repo.
To run the tests:
$ URI=mongodb://username:password@localhost:27107/databasename.bucket npm test
========================================
License
MIT