Langsung ke konten utama

Referensi Kode Status HTTP gratis

Referensi yang dapat dicari untuk semua kode status HTTP — apa arti setiap kode, kapan digunakan, dan penyebab umum. Dari 100 hingga 511.

Berfungsi offline setelah dimuat

61 kode status

100

Lanjutkan

Server telah menerima header permintaan dan klien harus melanjutkan dengan badan.

Digunakan untuk permintaan dengan Expect: 100-continue. Server mengakui bahwa bersedia menerima badan sebelum klien mengirimnya. Jarang terlihat di aplikasi web modern.

RFC 9110 ↗
101

Beralih Protokol

Server beralih protokol sesuai permintaan klien.

Paling sering digunakan untuk upgrade WebSocket — klien meminta Upgrade: websocket dan server merespons 101 untuk beralih.

RFC 9110 ↗
102

Memproses

Server telah menerima permintaan dan sedang memprosesnya, tetapi belum ada respons yang tersedia.

Respons sementara WebDAV yang dikirim untuk mencegah waktu tunggu klien selama operasi yang panjang. Ditinggalkan — server modern tidak boleh mengirimnya.

RFC 2518 ↗
103

Petunjuk Awal

Header pendahuluan dikirim sebelum respons akhir.

Memungkinkan server mengirim header Link (preload/preconnect) saat respons akhir masih disiapkan, sehingga browser dapat mulai mengambil aset penting lebih cepat.

RFC 8297 ↗
200

OK

Permintaan berhasil.

Respons kesuksesan standar. Maknanya tergantung metode HTTP: GET → resource dikembalikan, POST/PUT → tindakan selesai.

RFC 9110 ↗
201

Dibuat

Resource baru berhasil dibuat.

Umum setelah POST. Respons harus menyertakan header Location yang menunjuk ke URL resource baru.

RFC 9110 ↗
202

Diterima

Permintaan diterima untuk pemrosesan, tetapi pemrosesan belum selesai.

Untuk operasi asinkron — server sedang mengantrekan pekerjaan. Klien harus melakukan polling pada endpoint status atau memeriksa kembali nanti.

RFC 9110 ↗
203

Informasi Non-Otoritatif

Respons dimodifikasi oleh proxy transformasi.

Permintaan berhasil, tetapi perantara (seperti proxy cache atau transformasi) mengubah muatan dari server asal — misalnya, mengompresi ulang gambar. Jarang dalam praktik.

RFC 9110 ↗
204

Tidak Ada Konten

Permintaan berhasil tetapi tidak ada badan respons.

Sering digunakan untuk operasi DELETE atau pembaruan PUT yang tidak perlu mengembalikan badan. Klien tidak boleh meninggalkan halaman saat ini.

RFC 9110 ↗
205

Atur Ulang Konten

Permintaan berhasil; klien harus mereset tampilan dokumen.

Seperti 204, tidak ada badan yang dikembalikan — tetapi klien juga diberitahu untuk mereset formulir atau tampilan yang menghasilkan permintaan (misalnya, hapus bidang formulir untuk entri berikutnya).

RFC 9110 ↗
206

Konten Sebagian

Server mengirimkan hanya sebagian dari resource.

Respons untuk permintaan Range. Digunakan oleh pemain video dan manajer unduhan untuk melanjutkan unduhan yang terputus atau streaming file besar.

RFC 9110 ↗
207

Status Multi

Badan respons berisi beberapa kode status untuk beberapa operasi.

WebDAV: badan XML melaporkan hasil dari beberapa sub-operasi secara independen — misalnya, pemindahan batch di mana beberapa item berhasil dan yang lain gagal.

RFC 4918 ↗
208

Sudah Dilaporkan

Anggota koleksi telah dicantumkan sebelumnya dalam respons.

WebDAV: digunakan dalam respons 207 Multi-Status untuk menghindari pencatatan anggota koleksi yang sama berulang kali ketika pengikatan membuat loop.

RFC 5842 ↗
226

IM Digunakan

Respons adalah hasil manipulasi instance yang diterapkan ke resource.

Pengodean delta: server mengembalikan perbedaan terhadap versi sebelumnya alih-alih resource lengkap, menghemat bandwidth. Sangat jarang diimplementasikan.

RFC 3229 ↗
300

Pilihan Berganda

Beberapa representasi resource tersedia.

Server menawarkan beberapa opsi (misalnya format atau bahasa berbeda) dan klien harus memilih satu. Jarang digunakan, karena negosiasi konten otomatis biasanya menangani ini.

RFC 9110 ↗
301

Dipindahkan Secara Permanen

Resource telah dipindahkan secara permanen ke URL baru.

Gunakan untuk perubahan URL permanen — mesin pencari akan memperbarui indeks mereka. Otoritas SEO ditransfer ke URL baru.

RFC 9110 ↗
302

Ditemukan (Pengalihan Sementara)

Resource sementara berada di URL yang berbeda.

Menunjukkan bahwa pengalihan tidak permanen. Caching kurang agresif daripada 301. Gunakan untuk hal-hal seperti 'login diperlukan, mengarahkan ke /login'.

RFC 9110 ↗
303

Lihat Lainnya

Alihkan ke URL berbeda menggunakan GET.

Digunakan setelah pengajuan POST — respons mengatakan 'POST Anda berfungsi, lihat URL GET ini untuk hasilnya'. Browser selalu GET URL baru.

RFC 9110 ↗
304

Tidak Dimodifikasi

Versi cache masih valid; gunakan.

Respons untuk permintaan bersyarat (dengan header If-None-Match atau If-Modified-Since). Menghemat bandwidth — tidak ada badan yang dikembalikan.

RFC 9110 ↗
307

Pengalihan Sementara

Seperti 302 tetapi mempertahankan metode HTTP asli.

Jika yang asli adalah POST, pengalihan juga menggunakan POST. Alternatif modern untuk 302 ketika preservasi metode penting.

RFC 9110 ↗
308

Pengalihan Permanen

Seperti 301 tetapi mempertahankan metode HTTP asli.

Pengganti modern untuk 301 ketika Anda ingin permintaan POST tetap POST setelah pengalihan.

RFC 9110 ↗
400

Permintaan Buruk

Server tidak dapat memahami permintaan karena sintaks yang salah format.

Penyebab umum: JSON yang salah format di badan, parameter query tidak valid, atau bidang yang diperlukan hilang. Periksa badan permintaan dan header.

RFC 9110 ↗
401

Tidak Terotorisasi

Autentikasi diperlukan dan belum disediakan.

Klien harus menyertakan kredensial autentikasi (header Authorization, cookie, token). 'Unauthorized' adalah misnomer — sebenarnya berarti 'tidak terautentikasi'.

RFC 9110 ↗
402

Pembayaran Diperlukan

Dicadangkan untuk penggunaan di masa depan — kadang digunakan untuk tingkat API berbayar.

Awalnya dirancang untuk pembayaran digital. Penggunaan modern: API kadang mengembalikan 402 ketika pengguna telah melampaui kuota berbayar mereka.

RFC 9110 ↗
403

Dilarang

Klien terautentikasi tetapi tidak memiliki izin.

Berbeda dari 401 — pengguna SUDAH login, tetapi akun mereka tidak memiliki izin untuk resource ini. Periksa logika peran/izin.

RFC 9110 ↗
404

Tidak Ditemukan

Resource yang diminta tidak ada.

Baik URL salah, resource dihapus, atau tidak pernah ada. Server kadang mengembalikan 404 untuk menyembunyikan bahwa 403 akan lebih akurat.

RFC 9110 ↗
405

Metode Tidak Diizinkan

Metode HTTP yang digunakan tidak diizinkan untuk resource ini.

Misalnya, permintaan GET ke endpoint yang hanya menerima POST. Respons harus menyertakan header Allow yang mencantumkan metode yang valid.

RFC 9110 ↗
406

Tidak Dapat Diterima

Tidak ada representasi yang cocok dengan header Accept klien.

Klien meminta jenis konten, bahasa, atau pengodean (melalui Accept, Accept-Language, Accept-Encoding) yang tidak dapat dipenuhi server. Banyak server melewati negosiasi ketat dan mengembalikan default sebagai gantinya.

RFC 9110 ↗
407

Autentikasi Proxy Diperlukan

Klien harus melakukan autentikasi dengan proxy terlebih dahulu.

Seperti 401, tetapi dikeluarkan oleh proxy: klien harus mengirim kredensial Proxy-Authorization. Terlihat di jaringan perusahaan dengan proxy yang mengautentikasi.

RFC 9110 ↗
408

Batas Waktu Permintaan

Server kehabisan waktu menunggu permintaan.

Klien memerlukan waktu terlalu lama untuk mengirim badan permintaan atau membiarkan koneksi tetap menganggur. Coba lagi permintaan tersebut.

RFC 9110 ↗
409

Konflik

Permintaan bertentangan dengan status sumber daya saat ini.

Biasanya dikembalikan untuk konflik pengeditan bersamaan atau pembuatan sumber daya duplikat (misalnya, membuat pengguna dengan email yang sudah ada).

RFC 9110 ↗
410

Hilang

Sumber daya telah dihapus dan tidak akan kembali.

Lebih kuat dari 404 — server secara eksplisit tahu sumber daya PERNAH ada tetapi telah dihapus secara permanen. Mesin pencari akan menghapus indeks.

RFC 9110 ↗
411

Panjang Diperlukan

Server memerlukan header Content-Length.

Permintaan ditolak karena kurang header Content-Length dan server menolak badan berukuran tidak diketahui. Tambahkan header dan coba lagi.

RFC 9110 ↗
412

Prasyarat Gagal

Syarat dalam header permintaan tidak terpenuhi.

Dikembalikan saat header bersyarat seperti If-Match atau If-Unmodified-Since gagal — biasanya penguncian optimistik: orang lain mengubah sumber daya sejak versi Anda. Ambil kembali dan coba lagi.

RFC 9110 ↗
413

Muatan Terlalu Besar

Badan permintaan melebihi batas ukuran server.

Umum saat mengunggah file besar. Konfigurasi server (nginx, apache) menetapkan ukuran badan maksimal. Periksa konfigurasi server.

RFC 9110 ↗
414

URI Terlalu Panjang

URL permintaan melebihi batas panjang server.

Biasanya disebabkan oleh string kueri yang sangat panjang (misalnya pengkodean data dalam GET). Beralih ke badan POST, atau tingkatkan batas server jika Anda mengontrolnya.

RFC 9110 ↗
415

Tipe Media Tidak Didukung

Server tidak dapat menangani Content-Type yang dikirim.

Misalnya, mengirim application/xml ke server yang hanya menerima application/json. Tetapkan header Content-Type dengan benar.

RFC 9110 ↗
416

Rentang Tidak Dapat Dipenuhi

Rentang byte yang diminta berada di luar ukuran sumber daya.

Header Range meminta bagian yang tidak dimiliki file — misalnya melanjutkan unduhan melampaui akhir file. Respons harus menyertakan Content-Range dengan ukuran aktual.

RFC 9110 ↗
417

Harapan Gagal

Server tidak dapat memenuhi persyaratan header Expect.

Dikirim saat server tidak mendukung Expect: 100-continue. Beberapa klien mengirim header ini secara default pada POST besar; menonaktifkannya biasanya menyelesaikan kesalahan.

RFC 9110 ↗
418

Saya adalah Teko

Server menolak untuk menyeduh kopi karena itu adalah teko.

Lelucon April Mop dari 1998 (RFC 2324). Beberapa API nyata menggunakannya untuk lelucon atau menandai titik akhir yang tidak direkomendasikan. Bukan untuk penggunaan produksi.

RFC 2324 ↗
421

Permintaan Salah Arah

Permintaan dikirim ke server yang tidak dapat menghasilkan respons untuknya.

Umum dengan penggunaan kembali koneksi HTTP/2: permintaan mencapai server yang tidak dikonfigurasi untuk nama host target. Klien harus mencoba lagi pada koneksi baru.

RFC 9110 ↗
422

Konten Tidak Dapat Diproses

Permintaan secara sintaksis valid tetapi semantik salah.

Misalnya, JSON diurai dengan benar tetapi bidang wajib hilang, atau nilai bidang berada di luar jangkauan. Umum dalam respons validasi API REST.

RFC 9110 ↗
423

Terkunci

Sumber daya terkunci.

WebDAV: sumber daya sumber atau tujuan dikunci oleh klien lain, sehingga operasi tidak dapat dilanjutkan. Tunggu kunci dilepaskan atau pecahkan dengan token yang tepat.

RFC 4918 ↗
424

Ketergantungan Gagal

Permintaan gagal karena permintaan dependen sebelumnya gagal.

WebDAV: dalam rantai operasi dependen, tindakan sebelumnya gagal, jadi yang ini tidak dilakukan. Lihat kegagalan sebelumnya untuk akar penyebabnya.

RFC 4918 ↗
425

Terlalu Awal

Server menolak untuk memproses permintaan yang mungkin diputar ulang.

Terkait dengan TLS 1.3 0-RTT (data awal): server tidak akan mengambil risiko memproses permintaan yang mungkin diputar ulang. Klien harus mencoba lagi setelah jabat tangan selesai.

RFC 8470 ↗
426

Peningkatan Diperlukan

Klien harus beralih ke protokol yang berbeda.

Server menolak untuk melayani permintaan melalui protokol saat ini tetapi akan setelah peningkatan — respons menyertakan header Upgrade yang menamai protokol yang diperlukan.

RFC 9110 ↗
428

Prasyarat Diperlukan

Server memerlukan permintaan menjadi bersyarat.

Server menuntut header bersyarat (seperti If-Match) untuk mencegah konflik pembaruan yang hilang. Ambil sumber daya, tangkap ETag-nya, dan kirim ulang dengan If-Match.

RFC 6585 ↗
429

Terlalu Banyak Permintaan

Klien dibatasi lajunya (rate-limited).

Perlambat. Respons harus menyertakan header Retry-After yang menunjukkan kapan harus mencoba lagi. Umum dengan API yang memiliki kuota permintaan.

RFC 6585 ↗
431

Bidang Header Permintaan Terlalu Besar

Header terlalu besar untuk diproses server.

Baik satu header atau total ukuran header melebihi batas — paling sering disebabkan oleh cookie berukuran besar. Hapus cookie atau kurangi apa yang aplikasi Anda simpan di dalamnya.

RFC 6585 ↗
451

Tidak Tersedia Karena Alasan Hukum

Akses ditolak karena tuntutan hukum.

Sumber daya diblokir karena alasan hukum — sensor, perintah pengadilan, atau peraturan regional. Nomor ini adalah acuan novel Fahrenheit 451.

RFC 7725 ↗
500

Kesalahan Internal Server

Server mengalami kondisi yang tidak terduga.

Tangkapan umum untuk kesalahan sisi server. Periksa log server untuk penyebab sebenarnya: pengecualian yang tidak ditangani, kesalahan database, dll.

RFC 9110 ↗
501

Tidak Diimplementasikan

Server tidak mendukung fungsi yang diminta.

Misalnya, server tidak mengenali metode HTTP. Jarang dalam praktik — lebih sering Anda akan melihat 405.

RFC 9110 ↗
502

Gateway Buruk

Server, bertindak sebagai gateway, mendapat respons buruk dari server upstream.

Umum dalam arsitektur microservice. Penyeimbang beban atau reverse proxy Anda mendapat respons yang salah format dari layanan backend.

RFC 9110 ↗
503

Layanan Tidak Tersedia

Server sementara tidak dapat menangani permintaan.

Baik sedang dalam pemeliharaan atau kelebihan beban. Respons harus menyertakan header Retry-After. Sering dikembalikan selama penerapan.

RFC 9110 ↗
504

Batas Waktu Gateway

Server gateway kehabisan waktu menunggu respons upstream.

Layanan backend tidak merespons cukup cepat. Periksa kesehatan layanan upstream dan konfigurasi timeout.

RFC 9110 ↗
505

Versi HTTP Tidak Didukung

Server tidak mendukung versi HTTP yang digunakan dalam permintaan.

Versi HTTP utama dari permintaan tidak didukung oleh server. Hampir tidak pernah terlihat dengan klien modern.

RFC 9110 ↗
506

Varian Juga Bernegosiasi

Server memiliki kesalahan konfigurasi negosiasi konten.

Negosiasi konten transparan berakhir dalam loop: varian yang dipilih sendiri dikonfigurasi untuk bernegosiasi. Menunjukkan kesalahan konfigurasi server.

RFC 2295 ↗
507

Penyimpanan Tidak Mencukupi

Server kehabisan ruang disk.

Asal spesifik WebDAV tetapi kadang-kadang digunakan oleh server umum. Artinya server tidak dapat menyimpan permintaan karena keterbatasan penyimpanan.

RFC 4918 ↗
508

Loop Terdeteksi

Server mendeteksi loop tak terbatas saat memproses permintaan.

WebDAV: memproses permintaan Depth: infinity memasuki loop (misalnya pengikatan melingkar). Operasi dihentikan.

RFC 5842 ↗
510

Tidak Diperluas

Ekstensi tambahan pada permintaan diperlukan.

Dari Kerangka Kerja Ekstensi HTTP yang ketinggalan zaman: server memerlukan informasi lebih lanjut sebelum dapat memenuhi permintaan. Efektif tidak digunakan di web modern.

RFC 2774 ↗
511

Autentikasi Jaringan Diperlukan

Klien harus melakukan autentikasi untuk mendapatkan akses jaringan.

Digunakan oleh portal tertawan (WiFi hotel/bandara) untuk menunjukkan pengguna harus masuk ke jaringan sebelum mengakses situs eksternal.

RFC 6585 ↗

Penggunaan umum

  • Referensi untuk Desain APISaat merancang API REST, pilih kode status yang tepat untuk setiap respons.
  • Cari Kode Kesalahan dengan CepatKetika aplikasi Anda mengembalikan kesalahan HTTP yang membingungkan, cari apa artinya sebenarnya.
  • Pelajari Kode Status HTTPReferensi komprehensif untuk siswa dan pengembang yang mempelajari HTTP dan REST.
  • Referensi Cepat Selama InsidenSelama insiden produksi, cari dengan cepat apa arti setiap kode status.
  • Referensi untuk Dokumentasi APISaat menulis dokumentasi API, tautkan ke deskripsi otoritatif dari kode status yang Anda kembalikan.

Cara kerja

Alat ini adalah referensi sisi-klien yang dibangun di sekitar tabel pencarian tetap berisi 63 kode status HTTP yang mencakup seluruh lima kelas (1xx–5xx), masing-masing dianotasi dengan nomor RFC yang mendefinisikannya. Tidak ada panggilan server, tidak ada API eksternal, dan tidak ada permintaan jaringan — semua penyaringan dan tampilan terjadi di browser menggunakan metode array dan string bawaan JavaScript.

  1. 1
    Tabel pencarian dimuat
    Seluruh set 63 kode status terdaftar IANA disematkan langsung di alat ini sebagai array JavaScript, setiap entri membawa kode numerik, nama bahasa Inggris kanonik, kelas kategori, dan RFC spesifik yang mendefinisikannya (misalnya RFC 9110 untuk sebagian besar kode HTTP/1.1, RFC 6585 untuk 429 Too Many Requests, RFC 2324 untuk 418 I'm a Teapot).
  2. 2
    Filter berjalan dalam memori
    Saat Anda mengetik atau memilih filter kategori, Array.filter JavaScript berjalan pada daftar dalam-memori, mencocokkan kueri Anda terhadap nomor kode status, nama kanonik, dan string deskripsi pendek maupun panjang menggunakan String.includes — tanpa jeda debounce, tanpa perjalanan pulang-pergi server.
  3. 3
    Detail meluas dengan tautan RFC
    Setiap hasil dirender sebagai elemen details/summary HTML. Memperluas entri mengungkap penjelasan bentuk-panjang dan tautan langsung ke RFC otoritatif di rfc-editor.org, sehingga Anda bisa membaca teks spesifikasi yang tepat untuk kode apa pun.
  4. 4
    Tautan dalam dan salin clipboard
    Membuka entri memperbarui hash URL ke nomor kode (misalnya #404), membuat halaman dapat dibagikan dan ramah-tanda. Tombol salin menulis string kanonik (misalnya '404 Not Found') ke clipboard via navigator.clipboard API browser.

Alat terkait

Pertanyaan yang sering diajukan