0.2.5 • Published 8 years ago
middist v0.2.5
middist
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