0.2.5 • Published 9 years ago

middist v0.2.5

Weekly downloads
1
License
MIT
Repository
github
Last release
9 years ago

middist

NPM version Build Status Dependency Status Test Coverage

A generic middleware manager, inspired by Connect and middlebot.

Install

npm install middist --save

Use

  // Instantiate middist.
  var Router = require('middist');
  
  var router = Router();

  // Middleware example.
  var middleware = function(ctx, next) {
    // Do stuff here...
    next();

    // If there was an error call next with an error object.
    next('oups !');

    // Middlewares execution can be stop this way.
    ctx.end();
  }
  
  // Error middleware example, only called when a previous middleware
  //sent an error or throwed an exception
  var errorMiddleware = function(err, ctx, next) {
    //handle error...
    
    //calls following error middlewares
    next(err);
    
    //next can be called without err to ignore error and resume
    //normal middleware execution
    next();
  }

  // Register middleware to be called when ‘myMiddlewares’ is handled.
  router.use('myMiddlewares', middleware);

  // Middleware can be registered for mutiple types at once.
  router.use(['myMiddleWares, myOtherMiddlewares'], middleware);

  // Multiple middlewares can be registered at once.
  router.use('myMiddleWares', middleware, anotherMiddleware);

  // Context objects.
  var ctx = {};

  // Called once all middlewares are handled.
  var done = function (err, ctx) {
    if (err) console.log('error in one of the middleware');

    console.log('middleware executed correctly');
  }

  // Handle all middlewares registered for ‘myMiddleWares’ with req and res.
  router.handle('myMiddleWares', ctx, done);

Test

npm test

License

MIT

0.2.5

9 years ago

0.2.4

9 years ago

0.2.3

10 years ago

0.2.2

10 years ago

0.2.1

10 years ago

0.1.2

10 years ago

0.1.1

10 years ago

0.1.0

10 years ago

0.0.7

11 years ago

0.0.4

11 years ago

0.0.3

11 years ago

0.0.2

11 years ago

0.0.1

11 years ago