Rate Limiting in Node with Express
![Image](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjTZp1kICxOyuF8ogMqX2tr2JpAbmITRZLukUm6HfF5-NtPi2adbEIpqdNW_qQnN3UZ_0iK_6kUOkmqwU5NCoGzMjIZ8mpksoA3c3nmLkZ7USTSunhOUprfDHj0JdFIGYGZw1GOnAi_gAFsBRYuXnNU0Dzr65KuRQ8xQr9HYvo0T3pzXvfo_54_8-zgS3cS/s320/node-js-new.png)
Rate Limiting is Most Common Practice to Limit The Incoming Request of API's Rate Limit in Node.js - Education Funda Let's see how we can achieve it easily in Node with Express framework: You need to install rate limit package via ~$ npm i express-rate-limit . import * as RateLimit from 'express-rate-limit' ; const env = process . env . NODE_ENV || 'dev' ; const rateLimitRequest = Number ( process . env . RATE_LIMIT_TIME ) || 15 ; const rateLimitTime = Number ( process . env . RATE_LIMIT_REQUEST ) || 100 ; export default () => { if ( env === 'production' ) { return new RateLimit ({ windowMs: rateLimitTime * 60 * 1000 , // 15 minutes max: rateLimitRequest , // limit each IP to 30 requests per windowMs delayMs: 0 , handler: 'Rate limt exceeded, please try again later some time.' , }); } return new RateLimit ({ windowMs: 5 * 60 * 1000 , // 5 minutes max: 3000 , //