const rateLimit = require('express-rate-limit');
const limiter = rateLimit({
max: 100,
windowMs: 60 * 60 * 1000,
message: 'too many requests sent by this ip, please try again in an hour !'
});
app.use('<routes>', limiter); // eg: app.use('/api', limiter);
this.app.use(
rateLimit({
windowMs: 24 * 60 * 3, // next request to endpoint
max: 100, // maximal request for all endpoint
message: 'To many request, send back request after 3 minutes'
})
)
this.app.use(
SlowDown({
windowMs: 24 * 60 * 1, // next request to endpoint
delayMs: 24 * 60 * 2000, // increment delay
delayAfter: 100 // slow down after request
})
)
npm i express-rate-limit