2017-01-26 2 views
0

In Postman kann ich erfolgreich mit meiner REST-API kommunizieren. Ich kann meine API-Server in verschiedenen künstlichen Staaten zu vertreten 2xx, 4xx & 5xx Fehler setzen, die ich erfolgreich in Postman sehen können, wie folgt:Output REST API-Status in Postman zu AJAX angezeigt

403

404

505

203

Postbote ist in der Lage, diese Informationen zu sammeln, unabhängig davon, ob der API-Server läuft 0 oder nichtscheint es sich um eine generische Statusantwort zu handeln, im Gegensatz zu einer Antwort, die von der API-App generiert wird.

Meine Frage ist, wie kann ich dies in eine console.log() in meiner Javascript App ausgeben?

In meinem Fall, ich möchte Ausgabe vorlegen den Status innerhalb einer AJAX-Funktion im Backend eines Formulars:

$.ajax(settings).done(function(response, jqXHR, data) { 
     console.log("Return Code: " + data.status); 
    }) 
    .fail(function(jqXHR, textStatus, errorThrown) { 
     console.log("Return Code: " + ???); 
    }); 
}); 

Mein data.status funktioniert gut, wenn ich einen Erfolg, aber vermutlich ist es ein Variable, die ich anzapfen kann, ist die generische Statusmeldung?

Antwort

0

Sie können den zurückgegebenen Statuscode aus der status Eigenschaft des jqXHR Objekts erhalten:

.fail(function(jqXHR, textStatus, errorThrown) { 
    console.log("Return Code: " + jqXHR.status); 
}); 

Working example

+0

Dies funktioniert gut, wenn der API-Server auf und betriebsbereit ist. Es erzeugt 400 Antworten, wenn der Benutzer zum Beispiel bereits existiert. Aber wenn ich die API-App (die auf Azure gehostet wird) stoppe, erhalte ich eine Antwort von 403. Wenn ich den Server neu starte, erhalte ich vorübergehend eine 503-Antwort. Diese geben beide mit einem Rückkehrcode von 0, nicht 403 oder 503 an die Konsole aus. –

Verwandte Themen