1.0.0 • Published 8 years ago
express-dynamic-middleware v1.0.0
express-dynamic-middleware
To add, remove dynamic middleware in runtime for express.
More detail information in here.
Install
npm install express-dynamic-middlewareUsage
const express = require('express');
// import express-dynamic-middleware
const dynamicMiddleware = require('express-dynamic-middleware');
// create auth middleware
const auth = function(req, res, next) {
if (req.get('Authorization') === 'Basic') {
next();
} else {
res.status(401).end('Unauthorization');
}
};
// create dynamic middleware
const dynamic = dynamicMiddleware.create(auth);
// create express app
const app = express();
// use the dynamic middleware
app.use(dynamic.handle());
// unuse auth middleware
dynamic.unuse(auth);API
dynamicMiddleware.create(middlewares)
const dynamic = dynamicMiddleware.create(middlewares);Use create to create dynamic middleware dynamic, the argument middlewares cloud be a middleware function like function(req, res, next){} or a middleware functions array like [function(req, res, next){}, function(req, res, next){};
dynamic
dynamic is created by dynamicMiddleware.create, it has some functions to manage the middlewares.
use
dynamic.use(function(req, res, next) {
// do something
});To call use function to add middleware in runtime.
unuse
const auth = function(req, res, next) {
if (req.get('Authorization') === 'Basic') {
next();
} else {
res.status(401).end('Unauthorization');
}
};
// use auth middleware
dynamic.use(auth);
// remove the auth middleware
dynamic.unuse(auth);To call unuse function to remove the middleware.
clean
const dynamic = dynamicMiddleware.create([function(){}, function(){}]);
// clean the dynamic middlewares
dynamic.clean();To call clean function to remove all the middlewares
handle
const app = express();
// return the dynamic middlewares to the express app
app.use(dynamic.handle());To call handle function to get the dynamic middleware function to the express app
get
const dynamic = dynamicMiddleware.create([function(){}, function(){}]);
console.log(dynamic.get()); // [function(){}, function(){}]
console.log(dynamic.get().length); // 2
dynamic.use(function() {});
console.log(dynamic.get().length); // 3
dynamic.clean();
console.log(dynamic.get()); // []
console.log(dynamic.get().length); // 0To call get function to get the dynamic middleware stack.
1.0.0
8 years ago