Inhalt

    Serverantwort 422 Unprocessable Entity

    HTTP-Statuscode 422 (Unprocessable Entity)

    Der HTTP-Statuscode 422 zeigt an, dass der Server den Inhalt der Anfrage verstanden hat, jedoch aufgrund semantischer Fehler nicht verarbeiten kann. Dies kann in verschiedenen Situationen auftreten, in denen die bereitgestellten Daten nicht den Anforderungen des Servers entsprechen.

    422 - Unprocessable Entity

    Definition und Anwendung des Statuscodes 422

    Der Statuscode 422 bedeutet, dass der Server die Anfrage zwar empfangen hat, aber die enthaltenen Daten nicht verarbeiten kann. Dies geschieht häufig aufgrund von Fehlern in der Semantik der übermittelten Informationen.

    Situationen, in denen der Statuscode 422 auftreten kann

    • Nicht unterstütztes Datenformat
    • Fehlende erforderliche Felder
    • Ungültige Werte in den Feldern

    Praktische Beispiele für die Verwendung des Statuscodes 422

    Beispiel 1: Validierungsfehler bei einem Formular

    Ein Benutzer sendet ein Formular mit unvollständigen oder fehlerhaften Daten. Der Server antwortet mit dem Statuscode 422 und gibt eine detaillierte Beschreibung der aufgetretenen Fehler zurück.

    Beispiel 2: Datenverarbeitung in einer API

    Wenn der Server die eingehenden Daten nicht verarbeiten kann, gibt er den Statuscode 422 zurück. Ein Beispiel für eine Antwort könnte die Angabe spezifischer Fehler in den Daten sein.

    Beispiel 3: Arbeiten mit Dateien

    Wenn ein Benutzer versucht, eine Datei in einem nicht unterstützten Format hochzuladen, antwortet der Server mit dem Statuscode 422 und weist auf den Grund für die Ablehnung hin.

    Fehlerbehebung, die den Statuscode 422 verursacht

    Fehlerbehebung in JavaScript

    1. Beispielcode, der einen Fehler verursacht:
    2. 
              fetch('/api/data', {
                  method: 'POST',
                  body: JSON.stringify({ name: '' }) // Fehlendes Pflichtfeld
              });
          
    3. Korrektur des Codes zur richtigen Verarbeitung der Daten:
    4. 
              fetch('/api/data', {
                  method: 'POST',
                  body: JSON.stringify({ name: 'Max' }) // Korrekt
              });
          

    Fehlerbehebung in Python

    1. Beispiel eines fehlerhaften Antrags:
    2. 
              response = requests.post('/api/data', json={'email': 'invalid_email'}) # Ungültige E-Mail-Adresse
          
    3. Verwendung von Datenvalidierung zur Fehlervermeidung:
    4. 
              if validate_email(email):
                  response = requests.post('/api/data', json={'email': email}) # Korrekte E-Mail-Adresse
          

    Fehlerbehebung in PHP

    1. Beispiel für einen API-Aufruf mit fehlerhaften Daten:
    2. 
              $response = $client->post('/api/data', ['json' => ['age' => 'twenty']]); // Ungültiger Wert
          
    3. So konfigurieren Sie den Server zur richtigen Verarbeitung:
    4. 
              if (is_numeric($age)) {
                  $response = $client->post('/api/data', ['json' => ['age' => $age]]); // Korrekt
              }
          

    Empfehlungen zur Vermeidung des Statuscodes 422

    • Validierung der Daten auf der Client-Seite
    • Klare Dokumentation der API-Anforderungen
    • Fehlerprotokollierung zur Vereinfachung der Diagnose