* feat: remove eslint-plugin-prettier for prettier This removes the annoying lint warnings when all that needs to change is formatting * fix: use .js lint-staged config to ignore properly * fix: lint everything if a lot of files are changed It's faster than making lots of individual linter calls * chore: apply prettier * fix: ignore code in curriculum-file-structure
22 lines
503 B
JavaScript
22 lines
503 B
JavaScript
const rateLimit = require('express-rate-limit');
|
|
|
|
const limitHandler = (req, res) => {
|
|
res.status(429).json({
|
|
ok: false,
|
|
rateLimitMessage:
|
|
"You have accessed this app's pages too quickly. Please try again in 5 minutes."
|
|
});
|
|
};
|
|
|
|
const rateLimitOptions = {
|
|
windowMs: 5 * 60 * 1000, // 5 minutes
|
|
max: 100,
|
|
message: 'rate limit activated',
|
|
handler: limitHandler,
|
|
onLimitReached: limitHandler
|
|
};
|
|
|
|
const reqLimiter = rateLimit(rateLimitOptions);
|
|
|
|
module.exports = { reqLimiter };
|