我正在使用 Next Js 14 和 Mongo DB。
在 Node Js 中,我们可以使用 Express Rate Limit 包来控制网站用户请求数量。 如果用户在 15 分钟内请求该网站超过 200 次,该程序包会阻止该用户 15 分钟。
如何在 Next Js 14 应用程序路由器中完成这项工作? 感谢您的回复
使用 next.js 文档推荐的 @upstash/ratelimit
import { Ratelimit } from "@upstash/ratelimit";
const { limit } = new Ratelimit({
redis: Redis.fromEnv(),
limiter: Ratelimit.slidingWindow(
"15 m", // interval of 15 minutes
200, // Allow 200 requests per window of 15 minutes
)
})