Package org.springframework.web.client
Interface RestClient.ResponseSpec
- Enclosing interface:
- RestClient
public static interface RestClient.ResponseSpec
Contract for specifying response operations following the exchange.
-
Nested Class Summary
-
Method Summary
Modifier and TypeMethodDescription<T> T
Extract the body as an object of the given type.<T> T
body
(ParameterizedTypeReference<T> bodyType) Extract the body as an object of the given type.onStatus
(Predicate<HttpStatusCode> statusPredicate, RestClient.ResponseSpec.ErrorHandler errorHandler) Provide a function to map specific error status codes to an error handler.onStatus
(ResponseErrorHandler errorHandler) Provide a function to map specific error status codes to an error handler.Return aResponseEntity
without a body.<T> ResponseEntity<T>
Return aResponseEntity
with the body decoded to an Object of the given type.<T> ResponseEntity<T>
toEntity
(ParameterizedTypeReference<T> bodyType) Return aResponseEntity
with the body decoded to an Object of the given type.
-
Method Details
-
onStatus
RestClient.ResponseSpec onStatus(Predicate<HttpStatusCode> statusPredicate, RestClient.ResponseSpec.ErrorHandler errorHandler) Provide a function to map specific error status codes to an error handler.By default, if there are no matching status handlers, responses with status codes >= 400 wil throw a
RestClientResponseException
.Note that
IOExceptions
,UncheckedIOExceptions
, andHttpMessageNotReadableExceptions
thrown fromerrorHandler
will be wrapped in aRestClientException
.- Parameters:
statusPredicate
- to match responses witherrorHandler
- handler that typically, though not necessarily, throws an exception- Returns:
- this builder
-
onStatus
Provide a function to map specific error status codes to an error handler.By default, if there are no matching status handlers, responses with status codes >= 400 wil throw a
RestClientResponseException
.Note that
IOExceptions
,UncheckedIOExceptions
, andHttpMessageNotReadableExceptions
thrown fromerrorHandler
will be wrapped in aRestClientException
.- Parameters:
errorHandler
- the error handler- Returns:
- this builder
-
body
Extract the body as an object of the given type.- Type Parameters:
T
- the body type- Parameters:
bodyType
- the type of return value- Returns:
- the body, or
null
if no response body was available - Throws:
RestClientResponseException
- by default when receiving a response with a status code of 4xx or 5xx. UseonStatus(Predicate, ErrorHandler)
to customize error response handling.
-
body
Extract the body as an object of the given type.- Type Parameters:
T
- the body type- Parameters:
bodyType
- the type of return value- Returns:
- the body, or
null
if no response body was available - Throws:
RestClientResponseException
- by default when receiving a response with a status code of 4xx or 5xx. UseonStatus(Predicate, ErrorHandler)
to customize error response handling.
-
toEntity
Return aResponseEntity
with the body decoded to an Object of the given type.- Type Parameters:
T
- response body type- Parameters:
bodyType
- the expected response body type- Returns:
- the
ResponseEntity
with the decoded body - Throws:
RestClientResponseException
- by default when receiving a response with a status code of 4xx or 5xx. UseonStatus(Predicate, ErrorHandler)
to customize error response handling.
-
toEntity
Return aResponseEntity
with the body decoded to an Object of the given type.- Type Parameters:
T
- response body type- Parameters:
bodyType
- the expected response body type- Returns:
- the
ResponseEntity
with the decoded body - Throws:
RestClientResponseException
- by default when receiving a response with a status code of 4xx or 5xx. UseonStatus(Predicate, ErrorHandler)
to customize error response handling.
-
toBodilessEntity
ResponseEntity<Void> toBodilessEntity()Return aResponseEntity
without a body.- Returns:
- the
ResponseEntity
- Throws:
RestClientResponseException
- by default when receiving a response with a status code of 4xx or 5xx. UseonStatus(Predicate, ErrorHandler)
to customize error response handling.
-