mongodb session store for connect


connect-mongodb is a mongoDB session store backed by node-mongodb-native.

Originally written by dvv

This version is not compatible with 0.* versions. Now you must pass a mongodb connection, or server configuration. On updating, i recomment to delete your current sessions collection data.

via npm:

$ npm install connect-mongodb

To start connect-mongodb, you have to pass instances of select node-mongodb-native classes, thus permitting the usage of existing connections or server configurations.

Using an existing connection:

  • db Existing connection/database reference (instance of mongodb.Db)

Or with a server configuration:

  • server_config Existing server configuration (may be an instance of either mongodb.Server, mongodb.ServerPair, mongodb.ServerCluster, mongodb.ReplSetServers) - review node-mongodb-native docs.

Other options:

  • collection MongoDB collection to host sessions. 'sessions' by default
  • reapInterval ms to check expired sessions to remove on db
  • username To authenticate your db connection
  • password To authenticate your db connection

You have a complete example on example/index.js.

var connect = require('connect')
  , Db = require('mongodb').Db
  , Server = require('mongodb').Server
  , server_config = new Server('localhost', 27017, {auto_reconnect: true, native_parser: true})
  , db = new Db('test', server_config, {})
  , mongoStore = require('connect-mongodb');

    cookie: {maxAge: 60000 * 20} // 20 minutes
  , secret: 'foo'
  , store: new mongoStore({db: db})

This library is being tested using testosterone.

To run the tests: