1
0
mirror of https://github.com/dap-ps/discover.git synced 2025-02-12 09:17:32 +00:00
2019-06-03 21:01:42 +03:00

22 lines
761 B
JavaScript

let rateLimit = require('express-rate-limit');
const logger = require('./../../logger/logger').getLoggerFor("Rate-Limit");
class RateLimitMiddleware {
static setup() {
let limiter = rateLimit({
windowMs: process.env.RATE_LIMIT_TIME,
max: process.env.MAX_REQUESTS_FOR_RATE_LIMIT_TIME,
handler: function (req, res) {
logger.warn(this.message);
res.status(this.statusCode).send({ error: this.message });
},
message: `Rate limit was reached, you are able to do ${process.env.MAX_REQUESTS_FOR_RATE_LIMIT_TIME} requests per ${process.env.RATE_LIMIT_TIME} milliseconds`
});
return limiter;
}
}
module.exports = RateLimitMiddleware.setup();