Soru, görüş ve önerileriniz için;

contact@fatih-karakus.com

HTTP Response Kodları: Anlamları ve Kullanımları

HTTP Response Kodları: Anlamları ve Kullanımları

HTTP (Hypertext Transfer Protocol), web tarayıcıları ve sunucular arasında iletişimi sağlayan bir protokoldür. HTTP response kodları, sunucunun bir isteğe nasıl yanıt verdiğini belirtir. Bu yazıda, HTTP response kodlarını ve anlamlarını açıklayacak ve farklı senaryolarda nasıl kullanıldıklarını göreceğiz.

HTTP Response Kodları Nedir?

HTTP response kodları, sunucunun bir isteği nasıl işlediğini ve yanıtını nasıl oluşturduğunu gösteren üç haneli sayılardır. Bu kodlar, bir isteğin başarılı bir şekilde tamamlandığını, yönlendirildiğini, hatalarla karşılaşıldığını veya isteğin reddedildiğini belirtir.

HTTP Response Kodu Kategorileri

HTTP response kodları, beş farklı kategoriye ayrılır:

  • 1xx: Bilgilendirme (Informational) kodları, isteğin alındığı ve işleme başladığı bilgisini verir.

    • 100 Continue: İstemci, sunucunun devam etmesi için isteği tamamlamalıdır.
    • 101 Switching Protocols: Sunucu, istemciye başka bir protokole geçtiğini bildirir.
  • 2xx: Başarı (Success) kodları, isteğin başarılı bir şekilde işlendiğini belirtir.

    • 200 OK: İstek başarılı bir şekilde işlendi ve yanıt olarak bir içerik döndürüldü.
    • 201 Created: İstekle ilişkilendirilen yeni bir kaynak başarıyla oluşturuldu.
    • 204 No Content: İstek başarılı oldu, ancak yanıtta içerik bulunmuyor.
  • 3xx: Yönlendirme (Redirection) kodları, isteğin başka bir konuma yönlendirildiğini belirtir.

    • 301 Moved Permanently: İstek kaynak, kalıcı olarak başka bir konuma taşındı.
    • 302 Found: İstek kaynak, geçici olarak başka bir konuma taşındı.
    • 304 Not Modified: İstek kaynak, değişmediği için kullanıcı önbelleğindeki kopyasını kullanabilir.
  • 4xx: İstemci Hatası (Client Error) kodları, isteğin yanlış veya geçersiz olduğunu belirtir.

    • 400 Bad Request: İstek geçersiz veya anlaşılamadı.
    • 401 Unauthorized: İstemci kimlik doğrulama gerektirir.
    • 404 Not Found: İstek kaynak bulunamadı.
  • 5xx: Sunucu Hatası (Server Error) kodları, sunucunun isteği işlerken bir hata yaşadığını belirtir.

    • 500 Internal Server Error: Sunucu, isteği işlerken bir iç hatayla karşılaştı.
    • 503 Service Unavailable: Sunucu, geçici olarak hizmet veremiyor.

Diğer HTTP Response Kodları

  • 100 Continue: İstemci, sunucunun devam etmesi için isteği tamamlamalıdır.
  • 101 Switching Protocols: Sunucu, istemciye başka bir protokole geçtiğini bildirir.
  • 201 Created: İstekle ilişkilendirilen yeni bir kaynak başarıyla oluşturuldu.
  • 204 No Content: İstek başarılı oldu, ancak yanıtta içerik bulunmuyor.
  • 301 Moved Permanently: İstek kaynak, kalıcı olarak başka bir konuma taşındı.
  • 302 Found: İstek kaynak, geçici olarak başka bir konuma taşındı.
  • 304 Not Modified: İstek kaynak, değişmediği için kullanıcı önbelleğindeki kopyasını kullanabilir.
  • 400 Bad Request: İstek geçersiz veya anlaşılamadı.
  • 401 Unauthorized: İstemci kimlik doğrulama gerektirir.
  • 403 Forbidden: İstek yasaklandı, erişim reddedildi.
  • 404 Not Found: İstek kaynak bulunamadı.
  • 500 Internal Server Error: Sunucu, isteği işlerken bir iç hatayla karşılaştı.
  • 502 Bad Gateway: Sunucu, geçersiz bir yanıt aldı veya hedefe ulaşamadı.
  • 503 Service Unavailable: Sunucu, geçici olarak hizmet veremiyor.
  • 504 Gateway Timeout: Sunucu, geri dönüş almak için beklerken zaman aşımına uğradı.

HTTP Response Kodlarının Kullanımı

HTTP response kodları, bir isteğin durumunu ve sunucunun yanıtını açıkça belirtir. Web uygulamalarında, bu kodlar kullanıcılara hataları bildirmek, yönlendirmeler yapmak veya başarı durumunu göstermek için kullanılır. Örneğin, bir form gönderildiğinde, sunucu 200 OK kodunu döndürerek işlemi başarılı bir şekilde tamamlandığını belirtebilir. Benzer şekilde, 404 Not Found kodu, bir kaynağın bulunamadığını kullanıcıya bildirir.

Örneğin, PHP ile bir HTTP response kodu döndürmek için aşağıdaki gibi kullanabilirsiniz:

http_response_code(200); // 200 OK
http_response_code(404); // 404 Not Found
http_response_code(500); // 500 Internal Server Error

Sonuç olarak, HTTP response kodları, sunucunun bir isteğe nasıl yanıt verdiğini belirtir ve isteğin başarılı bir şekilde tamamlandığını, yönlendirildiğini, hatalarla karşılaşıldığını veya reddedildiğini gösterir. Bu kodlar, web uygulamalarında hataları bildirmek, yönlendirmeler yapmak veya başarı durumunu göstermek için kullanılır. HTTP response kodlarının doğru şekilde kullanılması, kullanıcı deneyimini iyileştirir ve uygulamanın güvenilirliğini artırır.