HTTP durum kodları, istemcinin sunucudan aldığı yanıtın durumunu belirleyen ve genellikle sayfa yüklemeleri veya API etkileşimleri sırasında gözlemlenen sayısal kodlardır. Bu kodlar, istemcinin (örneğin, bir web tarayıcısı) sunucu ile yaptığı etkileşimlerin sonucunu anlamasına yardımcı olur. Kullanıcılar çoğunlukla bu kodları doğrudan görmez, ancak bunlar web deneyiminde önemli bir rol oynar.
HTTP durum kodları, beş ana grupta sınıflandırılabilir:
- Bilgilendirici (100-199)
- Başarılı (200-299)
- Yönlendirme (300-399)
- İstemci Hatası (400-499)
- Sunucu Hatası (500-599)
Bu yazıda, en yaygın kullanılan HTTP durum kodlarına ve bunların anlamlarına odaklanacağız.
Bilgilendirici HTTP Durum Kodları (100-199)
- HTTP 100 (Continue): İstemci isteğini göndermeye devam edebilir. Sunucu, isteğin henüz reddedilmediğini belirtir.
- HTTP 101 (Switching Protocol): Sunucu, istemcinin talep ettiği gibi bir protokol değişikliğini kabul ettiğini bildirir.
- HTTP 102 (Processing): Sunucu isteği almış ve işliyor, ancak henüz bir yanıt oluşturulmamıştır.
- HTTP 103 (Early Hints): Sunucu, yanıt başlıklarını göndermeden önce bazı bilgileri iletmek için kullanılır.
Başarılı HTTP Durum Kodları (200-299)
- HTTP 200 (OK): İstek başarılı bir şekilde işlenmiştir.
- HTTP 201 (Created): İstek başarılı ve yeni bir kaynak oluşturulmuştur.
- HTTP 202 (Accepted): İstek kabul edilmiştir ancak henüz tamamlanmamıştır.
- HTTP 204 (No Content): İstek başarıyla işlenmiş ancak yanıt yükünde veri yoktur.
Yönlendirme HTTP Durum Kodları (300-399)
- HTTP 301 (Moved Permanently): Kaynak kalıcı olarak başka bir URL’ye taşınmıştır.
- HTTP 302 (Found): Kaynak geçici olarak başka bir URL’ye yönlendirilmiştir.
- HTTP 303 (See Other): İsteğin yanıtı başka bir URL’den alınmalıdır.
- HTTP 304 (Not Modified): Kaynağın önbelleğe alınmış bir kopyası vardır; bu nedenle tekrar yüklenmesine gerek yoktur.
İstemci Hata HTTP Durum Kodları (400-499)
- HTTP 400 (Bad Request): Sunucu, yanlış yapılandırılmış bir isteği işleyememiştir.
- HTTP 401 (Unauthorized): Geçerli kimlik bilgileri olmadan istenen kaynağa erişim reddedilmiştir.
- HTTP 403 (Forbidden): İstemci geçerli verilere sahip olsa da, sunucu erişimi reddetmiştir.
- HTTP 404 (Not Found): İstenen kaynak sunucuda bulunamamıştır.
Sunucu Hata HTTP Durum Kodları (500-599)
- HTTP 500 (Internal Server Error): Sunucu, isteği tamamlarken beklenmedik bir hata ile karşılaşmıştır.
- HTTP 503 (Service Unavailable): Sunucu, geçici olarak hizmet verememektedir.
Sonuç
HTTP durum kodları, web uygulamaları ve API etkileşimlerinde kullanıcı deneyimini iyileştiren önemli bileşenlerdir. Doğru durum kodlarını anlamak ve kullanmak, geliştiricilerin sorunları hızlı bir şekilde tespit etmesine ve çözmesine yardımcı olur. Bu yazıda ele alınan kodlar, web geliştirme ve yönetiminde yaygın olarak karşılaşabileceğiniz durumlardır. Daha fazla bilgi için RFC dökümanlarına başvurabilirsiniz.