Skip to content

yanhick/middlebot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

middlebot

Build Status Dependency Status devDependency Status

A generic middleware manager, inspired by Connect. Instead of using routes, you can use any category you need.

Install

npm install middlebot

Use

  // Instantiate middlebot.
  var app = require('middlebot')();

  // Middleware example.
  var middleware = function(req, res, 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.
    res.end();
  }
  
  // Error middleware example, only called when a previous middleware
  //sent an error or throwed an exception
  var errorMiddleware = function(err, req, res, 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.
  app.use('myMiddlewares', middleware);

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

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

  // Request and response objects.
  var req = {};
  var res = {};

  // Called once all middlewares are handled.
  var done = function (err, req, res) {
    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.
  app.handle('myMiddleWares', req, res, done);

Test

npm test

License

MIT

About

Generic Connect-like middleware manager

Resources

License

Stars

Watchers

Forks

Packages

No packages published