İçerikler

    Sunucu yanıtı 204 No Content

    HTTP Durum Kodu 204 (No Content)

    HTTP durum kodu 204, web geliştirmede önemli bir rol oynamaktadır. Bu kod, sunucuların istemcilere yapılan bir isteğin başarıyla işlendiğini ancak yanıt olarak gönderilecek veri olmadığını bildirmesine olanak tanır.

    204 - No Content

    204 Durum Kodunun Özellikleri

    • Tanım: 204 durumu, isteğin başarıyla tamamlandığını fakat içerik sağlamadığını belirtir.
    • Kullanım Zamanı: Genellikle, bir kaynak silindiğinde veya güncellendiğinde ve istemcinin yanıt beklemediği durumlarda kullanılır.
    • Diğer Durum Kodlarından Farkları:
      • 200: Başarılı yanıt ve içerik ile birlikte gelir.
      • 204: Başarılı yanıt ancak içerik yoktur.

    Pratik Örnekler

    Örnek 1: Başarılı İstek - Veri Yok

    Açıklama: Bir kaynağın silinmesi işlemi.

    fetch('https://api.example.com/resource/1', { method: 'DELETE' })
        .then(response => {
            if (response.status === 204) {
                console.log('Kaynak başarıyla silindi.');
            }
        });

    Örnek 2: Veri Güncelleme - Yanıt Yok

    Açıklama: Kullanıcı profilinin güncellenmesi.

    import requests
    
    response = requests.put('https://api.example.com/user/1', json={'name': 'Yeni İsim'})
    if response.status_code == 204:
        print('Profil başarıyla güncellendi.')

    Örnek 3: İşlem Onayı - Veri iletme yok

    Açıklama: Kullanıcının bir işlemi onaylaması.

    <?php
    $success = true; // İşlem başarılı ise
    
    if ($success) {
        http_response_code(204);
        exit;
    }
    ?>

    204 Durum Kodunu Kullanırken Yapılan Hatalar ve Düzeltmeler

    • Yanlış Kullanım Durumları:
      • Yanıt içinde veri gönderilmesi.
      • İçerik gerektiren durumlarda 204 kullanılması.

    Düzeltmeler

    JavaScript

    // Hatalı Kullanım
    fetch('https://api.example.com/resource', { method: 'DELETE' })
        .then(response => response.json()) // Hatalı: Yanıt içeriği bekleniyor
        .then(data => console.log(data));
    
    // Doğru Kullanım
    fetch('https://api.example.com/resource', { method: 'DELETE' })
        .then(response => {
            if (response.status === 204) {
                console.log('Kaynak başarıyla silindi.');
            }
        });

    Python

    # Hatalı Kullanım
    response = requests.delete('https://api.example.com/resource')
    print(response.json())  # Hatalı: Yanıt içeriği bekleniyor
    
    # Doğru Kullanım
    response = requests.delete('https://api.example.com/resource')
    if response.status_code == 204:
        print('Kaynak başarıyla silindi.')

    PHP

    <?php
    http_response_code(204);
    echo json_encode(['message' => 'Başarılı']); // Hatalı: Yanıt içeriği gönderiliyor
    ?>
    
    // Doğru Kullanım
    http_response_code(204);
    exit;

    204 Durum Kodunu Doğru Kullanma İpuçları

    • API Tasarımı İçin Öneriler: 204 durum kodunu kullanırken, istemcinin yanıt beklemediğinden emin olun.
    • Test Etme: 204 durum kodunu test ederken, istemcinin yanıt almadan doğru şekilde işlem yapıp yapmadığını kontrol edin.

    Özet

    HTTP durum kodu 204, sunucuların istemcilere veri olmadan başarılı bir işlem gerçekleştirdiğini bildirmek için etkili bir yoldur. Kullanımında dikkat edilmesi gereken noktalar ve yaygın hatalar, geliştiricilerin doğru şekilde bu kodu uygulamalarını sağlamaktadır. Uygulamalarda doğru kullanım için pratik örnekler ve düzeltmeler, geliştiricilere yol göstermektedir.