1.1.0 • Published 7 years ago

slow-it-down v1.1.0

Weekly downloads
2
License
MIT
Repository
-
Last release
7 years ago

slow-it-down

A rate limiter for Express written in TypeScript.

Usage

const slowDown = require('slow-it-down')
const app = express()

app.use(slowDown({
  burst: 25, // Maxiumum number of concurrent requests
  rate: 1, // 1 requests/second
  ip: true,
}))

slowDown(config)

Creates a new rate limiter, accepts the following:

namedefaulttypedescription
burst-numberNumber of requests a user can have
rate-numberRate at which those requests refill
iptruebooleanThrottle on IP
userfalsebooleanThrottle using user on req
xfffalsebooleanThrottle using X-Forwarded-For
overrides-objectOverrides for individual keys
tokensTabletokenBucketObjectIn-memory storage engine
maxKeys10000numberMaximum distinct throttling keys

Testing

yarn test