Sign In Start Free Trial
Account

Add to playlist

Create a Playlist

Modal Close icon
You need to login to use this feature.
  • Book Overview & Buying Mastering Web Application Development with Express
  • Table Of Contents Toc
Mastering Web Application Development with Express

Mastering Web Application Development with Express

By : Alexandru Vladutu
3.7 (3)
close
close
Mastering Web Application Development with Express

Mastering Web Application Development with Express

3.7 (3)
By: Alexandru Vladutu

Overview of this book

If you are a Node.js developer who wants to take your Express skills to the next level and develop high performing, reliable web applications using best practices, this book is ideal for you. The only prerequisite is knowledge of Node.js.
Table of Contents (13 chapters)
close
close
12
Index

API rate limiting


Sometimes, we may want to rate limit our API to prevent abuse or because the system can handle a limited amount of requests per second. There are several ways to rate limit our API, such as by limiting the number of requests by IP address or username. If we choose to implement rate limiting based on the username, we can create a middleware that can be reused for all the routes that require authentication.

There is an excellent module by TJ Holowaychuk (the creator of Express) called node-ratelimiter (https://github.com/visionmedia/node-ratelimiter) that will basically do all the heavy lifting for us.

We create a configurable middleware that takes three arguments: the database connection to Redis (the in-memory database needed by the rate limiter), the maximum number of requests allowed in the time frame specified, and the duration of the limit. Here's how our middleware will look:

var Limiter = require('ratelimiter');
var ms = require('ms');

module.exports = function(db,...
CONTINUE READING
83
Tech Concepts
36
Programming languages
73
Tech Tools
Icon Unlimited access to the largest independent learning library in tech of over 8,000 expert-authored tech books and videos.
Icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Icon 50+ new titles added per month and exclusive early access to books as they are being written.
Mastering Web Application Development with Express
notes
bookmark Notes and Bookmarks search Search in title playlist Add to playlist font-size Font size

Change the font size

margin-width Margin width

Change margin width

day-mode Day/Sepia/Night Modes

Change background colour

Close icon Search
Country selected

Close icon Your notes and bookmarks

Confirmation

Modal Close icon
claim successful

Buy this book with your credits?

Modal Close icon
Are you sure you want to buy this book with one of your credits?
Close
YES, BUY

Submit Your Feedback

Modal Close icon
Modal Close icon
Modal Close icon