A express module that provides a simple file upload api using couchDb as file storage.
npm install express-couchFs --save
var couchFs = require('express-couchdb-fs');
app.configure(function() {
app.use('/api/file', couchFs({couch: 'http://localhost:5984/fs'}));
});
If you would like to dynamically change which database is being used, then use
the following configuration and set the request parameter given to the name of
the database to use. The database_parameter_name
is optional and will default
to "COUCH_DB"
.
app.use('/api/file', couchFs({url: 'http://localhost:5984/', database_parameter_name: 'COUCH_DB' }));
The post statement can be a FORM Post or XHR2 post, the important aspect is that the body contains a file field named: uploadFile
On Success, this returns the couchdb generated document response:
{
ok: true,
id: xxxxx,
rev: xxxx
}
Grabs the file and downloads it to the client with a save as dialog. Or shows it as an image if the file is an image file. Does not do any caching but should be added.
To request an inline attachment, add the query string inline=true
to the url. If the browser can natively handle the attachment, it will be displayed as requested, else it will fallback to a download.
Removes the file from the file store
MIT
pull request are welcome