Kode Status HTTP
Cari kode status HTTP apa pun (1xx–5xx). Maknanya, alasan umum, dan referensi RFC.
Dibuat oleh JXXR1 · ♥ Jadi sponsor · ☕ Belikan saya kopi
Untuk apa ini?
HTTP status code adalah angka tiga digit yang dikirim balik server untuk memberitahu client bagaimana request berjalan. Mereka dikelompokkan dalam lima keluarga: 1xx (informational), 2xx (success), 3xx (redirection), 4xx (client error), 5xx (server error). Kebanyakan developer tahu kode headline — 200, 301, 404, 500 — tapi long tail (409 Conflict, 422 Unprocessable, 504 Gateway Timeout) adalah tempat bug yang sebenarnya hidup. Tool ini memberi kamu daftar lengkap dengan makna dan RFC tempat masing-masing didefinisikan.
Kapan digunakan
- Membaca dokumentasi API yang me-return kode yang tidak kamu kenal (425? 451?).
- Memilih kode yang tepat untuk di-return dari API kamu sendiri — 404 vs 410, 401 vs 403, 422 vs 400.
- Mendiagnosis 502/504 — apakah upstream down atau sekadar lambat?
- Menentukan apakah 200-dengan-error-body atau 4xx asli adalah langkah yang tepat.
- Mencari referensi RFC untuk code review atau design doc.
Kesalahan umum
- 401 berarti unauthenticated, 403 berarti unauthorized. Namanya menyesatkan — 401 berkata "saya tidak tahu kamu siapa", 403 berkata "saya tahu kamu siapa dan kamu tidak boleh memilikinya". Gunakan 403 hanya jika re-authenticate tidak akan menolong.
- 302 ambigu soal method. Browser secara historis mengubah POST→GET pada redirect 302. Gunakan 307 (mempertahankan method) atau 303 (selalu GET) untuk eksplisit.
- 404 bukan 410. 404 = "saya tidak tahu"; 410 = "saya tahu dan ia hilang selamanya". Gunakan 410 ketika search engine harus drop URL itu.
- 200 dengan error body bukan "RESTful". Kalau request gagal di level resource, return 4xx dengan error di body.
- 418 adalah lelucon. Jangan gunakan I'm-a-teapot di production — client dan proxy memperlakukannya tidak konsisten.
- RFC 9110 menggantikan RFC 7231/7232/7233/7234/7235. Kalau mengutip spec, gunakan 9110 (Juni 2022) kecuali kamu spesifik butuh versi lama.