You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

32 lines
665 B

import rateLimit from 'express-rate-limit';
export const loginLimiter = rateLimit({
windowMs: 15 * 60 * 1000, // 15 minutes
max: 5, // 5 attempts
message: {
success: false,
error: {
code: 'RATE_LIMIT',
message: 'Too many login attempts. Please try again later.'
}
},
standardHeaders: true,
legacyHeaders: false
});
export const apiLimiter = rateLimit({
windowMs: 1 * 60 * 1000, // 1 minute
max: 60, // 60 requests per minute
message: {
success: false,
error: {
code: 'RATE_LIMIT',
message: 'Too many requests. Please try again later.'
}
},
standardHeaders: true,
legacyHeaders: false
});