你可能会说
这个限流的逻辑我不太懂,帮我解释一下然后实现它。
限制单个用户单位时间内的请求次数。
限制单个用户单位时间内的请求次数。防止恶意刷接口、爬虫抓取,保护服务器不被打爆。
生活类比
像景区限流——每分钟只放 100 人进,人再多也不让进,保证里面的人体验。
🎮 动手试试
关于「限流」,以下哪个描述最准确?
你可以这样告诉 AI
帮我给登录接口加限流:同一 IP 每分钟最多尝试 5 次,超过后返回 429 并锁定 15 分钟。
限流是主动拒绝过多请求以保护系统,超时是等待太久无响应后自动放弃。一个管「太快太多」,一个管「太慢没回应」。
防止接口被恶意滥用
登录接口、短信验证码、公开 API 等容易被暴力攻击或爬虫刷量的接口,必须限制单用户请求频率。
和 AI 协作时
想让 AI 帮你加限流时,直接说「帮我用 express-rate-limit 给登录接口加上限制:每个 IP 每分钟最多 5 次,超出返回 429」。
内部管理后台
只有少数管理员使用的内部系统,用户可信且操作频率低,限流的意义不大。
与 API 安全无关的项目
如果你只做纯静态页面或客户端本地应用,不对外暴露接口,无需考虑限流。
限制单个用户单位时间内的请求次数。防止恶意刷接口、爬虫抓取,保护服务器不被打爆。
像景区限流——每分钟只放 100 人进,人再多也不让进,保证里面的人体验。
和 AI 沟通时提到「加个限流,每分钟最多 60 次」,就是在设请求频率上限。