Stelescope/node_modules/connect-mongodb
Saturneric a7116b5291 Add
2020-09-01 00:25:01 +08:00
..
example Add 2020-09-01 00:25:01 +08:00
lib Add 2020-09-01 00:25:01 +08:00
node_modules Add 2020-09-01 00:25:01 +08:00
tests Add 2020-09-01 00:25:01 +08:00
.npmignore Add 2020-09-01 00:25:01 +08:00
index.js Add 2020-09-01 00:25:01 +08:00
Makefile Add 2020-09-01 00:25:01 +08:00
package.json Add 2020-09-01 00:25:01 +08:00
Readme.md Add 2020-09-01 00:25:01 +08:00

connect-mongodb

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

Originally written by dvv

Version 1.*

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.

Installation

via npm:

$ npm install connect-mongodb

Options

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

Example

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');

connect.createServer(
  connect.bodyParser(),
  connect.cookieParser(),
  connect.session({
    cookie: {maxAge: 60000 * 20} // 20 minutes
  , secret: 'foo'
  , store: new mongoStore({db: db})
  })
);

Tests

This library is being tested using testosterone.

To run the tests:

make