关于 laravel:rate-limiting
面向 Laravel 开发的端点限流技能,旨在保护端点并让客户端行为可预测。内容涵盖按用户或 IP 限流、标准响应头、429 响应中的重试提示,以及为突发流量端点设置独立限制器。
主要功能
- 01按用户或 IP 限制请求
- 02通过标准响应头告知限制
- 03在 429 响应中提供重试提示
- 04为突发流量端点设置独立限制器
适用场景
- 01限制已认证 API 请求的用户速率
- 02用户未认证时按 IP 限流
- 03为突发流量路由配置独立限制
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ jpcaparas/ superpowers-laravel --skill laravel:rate-limiting安装后在 Claude Code 中输入/laravel:rate-limiting确认已加载。
详细介绍
速率限制与节流
保护端点免受滥用,同时确保用户体验可预测。
命令
// App\Providers\RouteServiceProvider
RateLimiter::for('api', function (Request $request) {
return Limit::perMinute(60)->by(optional($request->user())->id ?: $request->ip());
});
// routes/api.php
Route::middleware(['throttle:api'])->group(function () {
// ...
});
模式
- 用户通过身份验证时,按用户设置限制;否则按 IP 限制
- 通过标准标头向客户端告知限制
- 返回合理的 429 响应,并提供重试提示
- 将高频突发请求的端点交由专用限流器处理
评论
支持 Markdown