Rate Limiting (Rate Limiting)
Rate Limiting: محدود کردن درخواستها 🚦
Rate Limiting برای جلوگیری از abuse و DDoS attacks استفاده میشه!
نصب و استفاده:
// نصب
// npm install express-rate-limit
const rateLimit = require('express-rate-limit');
// Rate limiter ساده
const limiter = rateLimit({
windowMs: 15 * 60 * 1000, // 15 minutes
max: 100 // limit each IP to 100 requests per windowMs
});
app.use('/api/', limiter);
Rate Limiting برای Route خاص:
// برای login route (سختتر)
const loginLimiter = rateLimit({
windowMs: 15 * 60 * 1000,
max: 5, // فقط 5 تلاش در 15 دقیقه
message: 'Too many login attempts, please try again later'
});
app.post('/login', loginLimiter, (req, res) => {
// login logic
});
// برای API عمومی
const apiLimiter = rateLimit({
windowMs: 60 * 1000, // 1 minute
max: 10 // 10 requests per minute
});
app.use('/api/', apiLimiter);
✅ یاد گرفتید: Rate Limiting برای امنیت و performance عالیه!
آماده رفتن به درس بعدی هستید؟
این درس را به پایان رساندید و میتوانید به درس بعدی بروید.