MongoDB Session Storage for Connect Middleware
This module is an addon for Connect Middleware that adds a new Session Storage device.
Install
npm install connect-session-mongo
Usage
The standard usage, is to just pass an instantiated MongoStore
instance to the session plugin.
var connect = require('connect'),
MongoStore = require('connect-session-mongo');
var app = connect.createServer();
app.configure(function(){
app.use(connect.cookieDecoder());
app.use(connect.session({ store: new MongoStore() }));
app.use(app.router);
});
You can also pass several options to the constructor to tweak your session store:
- db - The name of the db to use, defaults to:
connect-sessions
- ip - The IP address of the server to connect to, defaults to:
127.0.0.1
- port - The Port to connect to, defaults to:
27017
- collection - The collection to save its data to, defaults to:
sessions
- server - A custom mongo Server instance (this overides db, ip & port)
- url - A url to use for Db.connect style database connections (this overrides db, ip, port & server)
- timeout - Number of seconds before an idle session is removed (optional)
- username - Username to authenticate to the database server as (optional)
- password - Password for the given user to authenticate to the database server (optional)
An optional callback function(err, connectedDb) can also be passed to the constructor after the options.
var CustomServer = new Server(123.456.789.1, 12345, { auto_reconnect: true }, {});
app.use(connect.session({ store: new MongoStore({ server: CustomServer }) }));
app.use(connect.session({url: process.env.MONGO_URL}, function(err,db) {if (err) {throw err;}}));
License
Licensed the BSD license.