Laravel Rate Limiting Throttling Policies API Access
Definisi
Throttling/rate limiting membatasi jumlah request yang boleh masuk dalam jendela waktu tertentu. Policies adalah otorisasi deklaratif untuk menentukan apakah user boleh melakukan aksi pada resource tertentu. Keduanya sering dipakai bersama untuk mengamankan API.
Kapan dipakai
- Throttle: lindungi endpoint dari abuse, brute force, atau traffic berlebih (login, API publik, upload).
- Policy: otorisasi bisnis ("user boleh edit post ini?") yang lebih terstruktur dari gate mentah.
- Gabungkan keduanya di route API: throttle cegah flood, policy cegah akses tidak berhak.
Cara kerja
Throttle middleware
Route::middleware('throttle:60,1')->group(function () {
Route::post('/api/orders', [OrderController::class