1.0.0 • Published 10 years ago

connect-nano v1.0.0

Weekly downloads
2
License
-
Repository
github
Last release
10 years ago

connect-nano Build Status

Provide req.nano, passing session cookies to CouchDB and back again.

Getting Started

Install the module with: npm install connect-nano

var connect = require('connect');
var nano = require('connect-nano');

var app = connect()
  .use(connect.cookieParser())  // connect-nano depends on cookieParser
  .use(nano('http://localhost:5984'))
  .use('/login', function(req, res) {
    req.pipe(req.nano.request({
      method: 'post',
      path: '_session',
      content_type: 'application/x-www-form-urlencoded; charset=utf-8'
    })).pipe(res);
  })
  .use('/session', function(req, res) {
    req.nano.request({ path: '_session' }).pipe(res);
  })
  .use('/me', function(req, res) {
    req.nano.request({ path: '_session' }, function(err, data) {
      if (err) {
        return res.end(err);
      }
      req.nano.use('_users').get('org.couchdb.user:' + data.userCtx.name).pipe(res);
    });
  })
  .listen(3000);

Options

connect-nano passes configuration directly over to nano(), see nano configuration.

Contributing

In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality.

  • Lint your code via npm run jshint.
    • And test your code with nodeunit via npm test.

License

Copyright (c) 2013 null2 GmbH, Johannes J. Schmidt
Licensed under the MIT license.

1.0.0

10 years ago

0.1.3

11 years ago

0.1.0

12 years ago