Package Exports
- express-dynamic-middleware
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (express-dynamic-middleware) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
express-dynamic-middleware
To add, remove dynamic middleware in runtime for express.
More detail information in here.
Install
npm install express-dynamic-middleware
Usage
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); // 0
To call get
function to get the dynamic middleware stack.