Skip to content

Files

Latest commit

f7baa56 · Apr 26, 2023

History

History
This branch is 11383 commits behind vercel/next.js:canary.

api-routes-rate-limit

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
Jul 8, 2022
Jul 8, 2022
Mar 27, 2023
Apr 26, 2023
Mar 27, 2023
Jul 8, 2022
Jan 4, 2021
Jul 8, 2022

API Routes Rate Limiting Example

This example uses lru-cache to implement a simple rate limiter for API routes (Serverless Functions).

Demo: https://nextjs-rate-limit.vercel.app/

curl http://localhost:3000/api/user -I
HTTP/1.1 200 OK
X-RateLimit-Limit: 10
X-RateLimit-Remaining: 9

curl http://localhost:3000/api/user -I
HTTP/1.1 429 Too Many Requests
X-RateLimit-Limit: 10
X-RateLimit-Remaining: 0

Deploy your own

Deploy the example using Vercel or preview live with StackBlitz

Deploy with Vercel

How to use

Execute create-next-app with npm, Yarn, or pnpm to bootstrap the example:

npx create-next-app --example api-routes-rate-limit api-routes-rate-limit-app
yarn create next-app --example api-routes-rate-limit api-routes-rate-limit-app
pnpm create next-app --example api-routes-rate-limit api-routes-rate-limit-app

Deploy it to the cloud with Vercel (Documentation).