Invokes connect-like middleware if / unless routing criteria matches. Inspired on express-unless module.
npm install middleware-if-unless
Invokes connect-like middleware if / unless routing criteria match.
> Inspired by the express-unless module. But a lot faster ;)
iff: execute middleware only if routing criteria is a match. Ideal use case: API gateways (see: fast-gateway)unless: execute middleware unless routing criteria is a match.iff -> unless of vice-versa.bash
npm i middleware-if-unless
`Extending middleware
`js
const iu = require('middleware-if-unless')()const middleware = function (req, res, next) {
res.body = 'hit'
return next()
}
// extend middleware with iff/unless capabilities
iu(middleware)
`
unless
Execute middleware unless routing criteria is a match:
`js
const app = require('express')()
app.use(middleware.unless([
'/not/allowed/to/hit'
]))...
`
In this example, all requests except [GET] /not/allowed/to/hit will cause the middleware to be executed.iff
Execute middleware only if routing criteria is a match:
`js
const app = require('express')()
app.use(middleware.iff([
{
methods: ['POST', 'DELETE', 'PUT', 'PATCH'],
url: '/tasks/:id'
}
]))...
`
In this example, only a [POST|DELETE|PUT|PATCH] /tasks/:id` request will cause the middleware to be executed.