Jquery ermöglicht Erfolgs-, Misserfolgs- und Fehlerreaktionen. Wie kann ich einen Ausfall oder Fehler manuell zusammen mit einer Zeichenfolge, die die failuer oder Fehler beschreibt zurück?
Antworten
Zu viele Anzeigen?Es hat sich eingebürgert, einen einfachen JSON-Umschlag zu verwenden, um Fehler zu melden, die auf der Serverseite aufgetreten sind (die keine HTTP-Fehler sind).
Die flickr api ist ein typisches Beispiel für eine Verpackung:
Beispiele für Erfolg und Misserfolg finden Sie unten auf dieser Seite.
Im Falle eines Ajax-Aufrufs an die Flickr-API würden Sie also in Ihrem Erfolgs-Callback die zurückgegebenen Daten auf Erfolg/Fehlschlag prüfen
$.ajax({
//...
success: function(data) {
if(data.stat == 'fail') {
//data.code + data.message contain details that could be used here
}
else {
//do success stuff here
}
}
});
Die Erfolgs- und Fehler-Callbacks, die jQuery bereitstellt, gelten für das XMLHTTPRequest-Objekt. Die einzige Möglichkeit, sie zu verwenden, ist, wenn Ihr Server einen Fehlercode in der Kopfzeile der HTTP-Antwort zurückgibt, was nicht sehr häufig vorkommt, weshalb ich es nicht empfehlen würde. Kurz gesagt, die jQuery-Fehlerfunktion ist für fatale Fehler, wie die URL nicht existiert, oder Authentifizierung erforderlich.
Alle anderen Fehler, die auftreten, sollten entweder auf der Server-Seite oder in der Erfolgsfunktion des jQuery-Ajax-Aufrufs behandelt werden.