33 lines
657 B
JavaScript
33 lines
657 B
JavaScript
const rateLimit = require('express-rate-limit');
|
|
|
|
const authLimiter = rateLimit({
|
|
windowMs: 15 * 60 * 1000, // 15 menit
|
|
max: 15,
|
|
standardHeaders: true,
|
|
legacyHeaders: false,
|
|
message: {
|
|
status: false,
|
|
data: null,
|
|
message: 'Kebanyakan login, mohon coba lagi setelah 15 menit',
|
|
code: 429,
|
|
},
|
|
});
|
|
|
|
const globalLimiter = rateLimit({
|
|
windowMs: 15 * 60 * 1000, // 15 menit
|
|
max: 200,
|
|
standardHeaders: true,
|
|
legacyHeaders: false,
|
|
message: {
|
|
status: false,
|
|
data: null,
|
|
message: 'Terlalu banyak request, mohon coba lagi setelah 15 menit',
|
|
code: 429,
|
|
},
|
|
});
|
|
|
|
module.exports = {
|
|
authLimiter,
|
|
globalLimiter,
|
|
};
|