So behandeln Sie HTTP-Fehler in Spring MVC @ResponseBody-Methoden
Wenn Sie Spring MVC @ResponseBody verwenden, um JSON in einer RESTful-API zurückzugeben, ist dies der Fall wichtig, um HTTP-Fehler ordnungsgemäß zu behandeln. Ein häufiger Fehlercode ist 400 (Bad Request). Dieser Fehlercode weist darauf hin, dass die Anfrage aufgrund fehlender oder falscher Parameter ungültig ist.
Im gegebenen Szenario, in dem der Rückgabetyp der Methode String ist, kann man die Signatur der Methode so ändern, dass ResponseEntity<> zurückgegeben wird. stattdessen. ResponseEntity<> ermöglicht Ihnen, sowohl den Antworttext als auch den HTTP-Statuscode anzugeben.
Um mit einem HTTP 400-Fehler zu antworten, können Sie eine ResponseEntity mit einem Nulltext und einem entsprechenden HTTP-Statuscode zurückgeben. Hier ein Beispiel:
<code class="java">@RequestMapping(value = "/matches/{matchId}", produces = "application/json") @ResponseBody public ResponseEntity<String> match(@PathVariable String matchId) { String json = matchService.getMatchJson(matchId); if (json == null) { return new ResponseEntity<>(HttpStatus.BAD_REQUEST); } return new ResponseEntity<>(json, HttpStatus.OK); }</code>
Alternativ wurden in Spring 4.1 Hilfsmethoden in ResponseEntity eingeführt, die diesen Prozess noch weiter vereinfachen. Sie können jetzt Folgendes verwenden:
<code class="java">return ResponseEntity.status(HttpStatus.BAD_REQUEST).body(null);</code>
oder für eine erfolgreiche Anfrage:
<code class="java">return ResponseEntity.ok(json);</code>
Durch die angemessene Behandlung von HTTP-Fehlern stellen Sie eine konsistente und benutzerfreundliche Erfahrung in Ihrer RESTful-API sicher.
Das obige ist der detaillierte Inhalt vonWie gebe ich HTTP-Fehlercodes mit @ResponseBody in Spring MVC zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!