...
200 - Sólo utilizar en caso de RESPUESTA CORRECTA. No debe utilizarse cuando ocurre un error. Para peticiones GET. => Ver
Tooltip linkTextStrong true linkTextUnderline true linkHrefBehavior true linkText Consecuencias - 201 - Para respuestas a peticiones POST y PUT correctas.
- 204 - Para respuestas a peticiones PUT, PATCH y DELETE correctas que no devuelven ningún body. (Ver documentación Spring)
400 - Mensaje mal formado, petición o url incorrecta.
401 - Fallo de autenticación.
403 - Acceso no permitido a un recurso.
404 - Recurso no encontrado.
405 - Método HTTP (GET, POST, PUT…) no permitido.
406 - MediaType solicitado no soportado (Accept en la petición y Produces del servicio no concuerdan).
415 - ContentType enviado no soportado (ContentType en la petición y Consumes del servicio no concuerdan).
500 - Error general en el servidor.
503 - Servidor no disponible temporalmente.
...
| Bloque de código | ||||||||
|---|---|---|---|---|---|---|---|---|
| ||||||||
//EJEMPLO ResponseEntity con éxito
public ResponseEntity<String> simpleAsyncTask( @RequestParam( defaultValue = "60" ) long t,
@RequestParam( defaultValue = "1" ) long sleep ) throws InterruptedException {
String result = "";
log.info( "Entro en simpleAsyncTask {} - {}", t, sleep );
final CompletableFuture<String> asyncStatus = service.asyncMethod( sleep * 1000, t );
result = asyncStatus.getNow( "ko" );
log.info( "Salgo de simpleAsyncTask" );
return ResponseEntity.ok( result );
}
//EJEMPLO ResponseEntity con error
@ExceptionHandler( TestLocalHandlerException.class )
public ResponseEntity<TestLocalHandlerError> handleTestLocalHandler( TestLocalHandlerException ex ) {
final TestLocalHandlerError error = TestLocalHandlerError.builder()
.estado( HttpStatus.INTERNAL_SERVER_ERROR ).fecha( LocalDateTime.now() )
.mensaje( ex.getMessage() ).build();
return ResponseEntity.status( HttpStatus.INTERNAL_SERVER_ERROR ).body( error );
} | ||||||||
| Tooltip | ||||||||
...
Guía detallada
Spring Boot proporciona varios mecanismos para capturar excepciones (global o localmente) y devolver mensajes de error (estándar o personalizados). Estos mecanismos han ido evolucionando con las diversas versiones del framework y, en algunos casos, pueden llegar a solaparse.
...