Server-Seite zugreifen: Spring FrameworkFrühling ResponseEntity & AJAX Funktion Fehler: kann nicht Antwort Körperinhalt
Ich habe ein Frühlings-Controller, die eine Methode hat, die den Typ ResponseEntity<String>
zurückgibt.
Für ganz gut Anfragen kehre ich folgendes:
return new ResponseEntity<>(OK_MESSAGE, new HttpHeaders(), HttpStatus.OK);
Aber wenn es irgendein Problem während der Ausführung oder Exception fangen, kehre ich:
return new ResponseEntity<>(ERROR_MESSAGE, new HttpHeaders(), HttpStatus.BAD_REQUEST);
Wo ERROR_MESSAGE
eine angepasste String für jede enthält Art der eingefangenen Ausnahme
Client-Seite: AJAX-Aufruf
Wenn die POST-Methode aufgerufen wird und gibt HttpStatus.OK, AJAX
success: function (data, message, xhr)
genannt wird, und ich kann den String OK_MESSAGE
durch den Zugriff auf data
easilly zugreifen .
Das Problem kommt, dass POST-Methode
error: function (xhr, status, errMsg)
genannt wird HttpStatus.BAD_REQUEST, AJAX gibt, aber ich kann den String ERROR_MESSAGE
durch den Server gesendet nicht zugreifen, die ich den Benutzer zeigen müssen.
Irgendwelche Vorschläge?
Hallo @charliebrownie können Sie bitte Post den Code von Ajax und Controller? – liorsolomon
Hallo! Meine Spring-Controller-Methode gibt genau das zurück, eine 'ResponseEntity', wobei der String die 'ERROR_MESSAGE'-Variable ist. Der einzige Unterschied im AJAX-Aufruf besteht darin, dass ich, wenn ich eine OK-Antwort erhalte, auf diesen String in dieser "data" -Variable zugreifen kann. Gibt es eine Möglichkeit, von der Fehlerfunktion aus darauf zuzugreifen? –
charliebrownie
Wenn Sie den Code benötigen, kann ich ein * edit * oder etwas tun, aber ich frage mich, ob es eine Möglichkeit gibt, auf den String zuzugreifen, den ich innerhalb der 'ResponseEntity' von der' error' Funktion, die ich vermisse, passiere ... denn es gibt einen Weg von der AJAX 'Erfolgsfunktion '. – charliebrownie