Heim >Web-Frontend >js-Tutorial >Wie kann ich detaillierte Fehlermeldungen aus der AJAX-Fehlerantwort von jQuery abrufen?

Wie kann ich detaillierte Fehlermeldungen aus der AJAX-Fehlerantwort von jQuery abrufen?

Linda Hamilton
Linda HamiltonOriginal
2024-10-30 06:28:03385Durchsuche

How to Retrieve Detailed Error Messages from jQuery's AJAX Error Response?

Die AJAX-Fehlerantwort von jQuery verstehen

Beim Senden von Fehlerantworten in jQuery kann das Abrufen der detaillierten Textnachricht eine Herausforderung darstellen. Standardmäßig stellt jQuery nur eine generische „Fehler“-Nachricht bereit, sodass Ihnen nur begrenzte Informationen zur Verfügung stehen.

Im bereitgestellten Beispiel wird ein HTTP 500-Fehler mit der benutzerdefinierten Nachricht „Gone to the beach“ gesendet. Wenn Sie jedoch den Fehlerrückruf in jQuery verwenden, zeigen das Konsolenprotokoll und die Warnung nur „Fehler“ an.

Zugriff auf den Fehlerantworttext

Um auf die tatsächliche Fehlerantwort zuzugreifen Text können Sie die Fehlerrückruffunktion ändern. So geht's:

<code class="javascript">$.ajax({
  type: "post",
  data: { id: 0 },
  cache: false,
  url: "doIt.php",
  dataType: "text",
  error: function(xhr, status, error) {
    var err = eval("(" + xhr.responseText + ")");
    alert("Can't do because: " + err.Message);
  },
  success: function() { alert("Done ! "); }
});</code>

In diesem geänderten Code:

  • xhr ist das XMLHttpRequest-Objekt, das die Fehlerantwort enthält.
  • xhr.responseText enthält den tatsächlichen Fehler Antworttext.
  • eval("(" xhr.responseText ")") konvertiert den vom Server zurückgegebenen JSON-String in ein JavaScript-Objekt.
  • Sie können dann auf bestimmte Fehlereigenschaften zugreifen, z err.Message, um die detaillierte Fehlermeldung anzuzeigen.

Das obige ist der detaillierte Inhalt vonWie kann ich detaillierte Fehlermeldungen aus der AJAX-Fehlerantwort von jQuery abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn