Name Last Update
..
lib Loading commit data...
test Loading commit data...
.npmignore Loading commit data...
.travis.yml Loading commit data...
History.md Loading commit data...
LICENSE Loading commit data...
Makefile Loading commit data...
README.md Loading commit data...
index.js Loading commit data...
package.json Loading commit data...

Meet Muri!

Muri is your friendly neighborhood MongoDB URI parser for Node.js.

Install

$ npm install muri

Use

 var muri = require('muri');
 var o = muri('mongodb://user:pass@local,remote:27018,japan:27019/neatdb?replicaSet=myreplset&journal=true&w=2&wtimeoutMS=50');

 console.log(o);

 { hosts: [ { host: 'local',  port: 27017 },
            { host: 'remote', port: 27018 },
            { host: 'japan',  port: 27019 } ],
   db: 'neatdb',
   options: {
     replicaSet: 'myreplset',
     journal: true,
     w: 2,
     wtimeoutMS: 50
   },
   auth: {
     user: 'user',
     pass: 'pass'
   }
 }

Details

The returned object contains the following properties:

  • db: the name of the database. defaults to "admin" if not specified
  • auth: if auth is specified, this object will exist { user: 'username', pass: 'password' }
  • hosts: array of host/port objects, one for each specified [{ host: 'local', port: 27107 }, { host: '..', port: port }]
    • if a port is not specified for a given host, the default port (27017) is used
    • if a unix domain socket is passed, host/port will be undefined and ipc will be set to the value specified [{ ipc: '/tmp/mongodb-27017' }]
  • options: this is a hash of all options specified in the querystring

License

MIT