1
0
mirror of https://github.com/dap-ps/discover.git synced 2025-02-07 15:05:07 +00:00
Jakub Sokołowski f7c0be8eb6
add config/index.js for central config management
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-08-05 12:36:32 -04:00

25 lines
789 B
JavaScript

const rateLimit = require('express-rate-limit');
const logger = require('./../../logger/logger').getLoggerFor("Rate-Limit");
const config = require('./../../config')
class RateLimitMiddleware {
static setup() {
const windowMs = config.RATE_LIMIT_TIME;
const maxReq = config.RATE_LIMIT_MAX_REQ;
let limiter = rateLimit({
windowMs: windowMs,
max: maxReq,
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 ${maxReq} requests per ${windowMs} milliseconds`
});
return limiter;
}
}
module.exports = RateLimitMiddleware.setup();