laravel-rate-limiting について
Laravelのレート制限に関するリファレンスで、クライアントの挙動を予測しやすく保ちながらエンドポイントを保護します。ユーザーまたはIP単位の制限、標準ヘッダー、429応答の再試行ヒント、集中アクセス向けの個別制限を扱います。
主な機能
- 01Laravelレートリミッターの設定
- 02ユーザーまたはIP単位の制限
- 03標準の制限ヘッダー送信
- 04再試行ヒント付き429応答
- 05集中アクセス向けの個別制限
活用シーン
- 01APIルートのリクエスト頻度制限
- 02未認証トラフィックのIP制限
- 03制限到達後の再試行案内
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ noartem/ skills --skill laravel-rate-limitingインストール後、Claude Code で/laravel-rate-limitingを入力して読み込まれたか確認します。
詳細
レート制限とスロットリング
UX の予測可能性を保ちながら、エンドポイントを不正利用から保護します。
コマンド
// 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 対応