express-dynamic-middleware

1.0.0 • Public • Published

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.

Package Sidebar

Install

npm i express-dynamic-middleware

Weekly Downloads

365

Version

1.0.0

License

MIT

Unpacked Size

14.6 kB

Total Files

10

Last publish

Collaborators

  • lanbomo