mirror of
https://github.com/scratchfoundation/node-redis-rate-limiter.git
synced 2024-12-01 11:36:59 -05:00
19 lines
400 B
JavaScript
19 lines
400 B
JavaScript
var rateLimiter = require('./rate-limiter');
|
|
|
|
module.exports = function(opts) {
|
|
var limiter = rateLimiter(opts);
|
|
return function(req, res, next) {
|
|
limiter(req, function(err, rate) {
|
|
if (err) {
|
|
next();
|
|
} else {
|
|
if (rate.current > rate.limit) {
|
|
res.writeHead(429);
|
|
res.end();
|
|
} else {
|
|
next();
|
|
}
|
|
}
|
|
});
|
|
};
|
|
};
|