public interface ClientResponse
WebClient
および ExchangeFunction
によって返される HTTP レスポンスを表します。レスポンスステータスとヘッダーへのアクセスを提供し、レスポンス本文を消費するメソッドも提供します。修飾子と型 | インターフェースと説明 |
---|---|
static interface | ClientResponse.Builder レスポンスのビルダーを定義します。 |
static interface | ClientResponse.Headers HTTP レスポンスのヘッダーを表します。 |
修飾子と型 | メソッドと説明 |
---|---|
<T> T | body(BodyExtractor<T,? super ClientHttpResponse> extractor) 指定された BodyExtractor で本体を抽出します。 |
<T> reactor.core.publisher.Flux<T> | bodyToFlux(ClassSE<? extends T> elementClass) 本体を Flux に抽出します。 |
<T> reactor.core.publisher.Flux<T> | bodyToFlux(ParameterizedTypeReference<T> elementTypeRef) 本体を Flux に抽出します。 |
<T> reactor.core.publisher.Mono<T> | bodyToMono(ClassSE<? extends T> elementClass) 本体を Mono に抽出します。 |
<T> reactor.core.publisher.Mono<T> | bodyToMono(ParameterizedTypeReference<T> elementTypeRef) 本体を Mono に抽出します。 |
MultiValueMap<StringSE, ResponseCookie> | cookies() このレスポンスの Cookie を返します。 |
static ClientResponse.Builder | create(HttpStatus statusCode) 指定されたステータスコードで、本文を読み取るためのデフォルトの戦略を使用して、レスポンスビルダーを作成します。 |
static ClientResponse.Builder | create(HttpStatus statusCode, ExchangeStrategies strategies) 指定されたステータスコードと本文を読み取るための戦略を使用して、レスポンスビルダーを作成します。 |
static ClientResponse.Builder | create(HttpStatus statusCode, ListSE<HttpMessageReader<?>> messageReaders) 指定されたステータスコードとメッセージ本文リーダーを使用して、レスポンスビルダーを作成します。 |
static ClientResponse.Builder | create(int statusCode, ExchangeStrategies strategies) 指定された生のステータスコードと本文を読み取るための戦略を使用して、レスポンスビルダーを作成します。 |
reactor.core.publisher.Mono<WebClientResponseException> | createException() レスポンスステータス、ヘッダー、本文、元のリクエストを含む WebClientResponseException を作成します。 |
static ClientResponse.Builder | from(ClientResponse other) 使用すべきではありません。 5.3 以降では、インスタンスベースの mutate() が使用されます。 |
ClientResponse.Headers | headers() このレスポンスのヘッダーを返します。 |
StringSE | logPrefix() この交換のメッセージを相関させるために使用するログメッセージプレフィックスを返します。 |
default ClientResponse.Builder | mutate() ビルダーを返して、このレスポンスを変更します。たとえば、ステータス、ヘッダー、Cookie を変更したり、本文を置き換えたり変換したりします。 |
int | rawStatusCode() このレスポンスの(潜在的に非標準の)ステータスコードを返します。 |
reactor.core.publisher.Mono<VoidSE> | releaseBody() このレスポンスの本文を解放します。 |
HttpStatus | statusCode() HTTP ステータスコードを HttpStatus 列挙値として返します。 |
ExchangeStrategies | strategies() このレスポンスの本文を変換するために使用される戦略を返します。 |
reactor.core.publisher.Mono<ResponseEntity<VoidSE>> | toBodilessEntity() このレスポンスを、ステータスとヘッダーは含むが本体は含まない遅延 ResponseEntity として返します。 |
<T> reactor.core.publisher.Mono<ResponseEntity<T>> | toEntity(ClassSE<T> bodyClass) このレスポンスを遅延 ResponseEntity として返します。 |
<T> reactor.core.publisher.Mono<ResponseEntity<T>> | toEntity(ParameterizedTypeReference<T> bodyTypeReference) このレスポンスを遅延 ResponseEntity として返します。 |
<T> reactor.core.publisher.Mono<ResponseEntity<ListSE<T>>> | toEntityList(ClassSE<T> elementClass) このレスポンスを ResponseEntity の遅延リストとして返します。 |
<T> reactor.core.publisher.Mono<ResponseEntity<ListSE<T>>> | toEntityList(ParameterizedTypeReference<T> elementTypeRef) このレスポンスを ResponseEntity の遅延リストとして返します。 |
HttpStatus statusCode()
HttpStatus
列挙値として返します。null
)IllegalArgumentExceptionSE
- 不明な HTTP ステータスコードの場合 HttpStatus.valueOf(int)
int rawStatusCode()
statusCode()
, HttpStatus.resolve(int)
ClientResponse.Headers headers()
MultiValueMap<StringSE,ResponseCookie> cookies()
ExchangeStrategies strategies()
<T> T body(BodyExtractor<T,? super ClientHttpResponse> extractor)
BodyExtractor
で本体を抽出します。T
- 返される本体の型 extractor
- レスポンスから読み取る BodyExtractor
<T> reactor.core.publisher.Mono<T> bodyToMono(ClassSE<? extends T> elementClass)
Mono
に抽出します。T
- 要素型 elementClass
- Mono
の要素のクラス T
の本体を含む mono <T> reactor.core.publisher.Mono<T> bodyToMono(ParameterizedTypeReference<T> elementTypeRef)
Mono
に抽出します。T
- 要素型 elementTypeRef
- Mono
の要素の型参照 T
の本体を含む mono <T> reactor.core.publisher.Flux<T> bodyToFlux(ClassSE<? extends T> elementClass)
Flux
に抽出します。T
- 要素型 elementClass
- Flux
の要素のクラス T
の本体を含むフラックス <T> reactor.core.publisher.Flux<T> bodyToFlux(ParameterizedTypeReference<T> elementTypeRef)
Flux
に抽出します。T
- 要素型 elementTypeRef
- Flux
の要素の型参照 T
の本体を含むフラックス reactor.core.publisher.Mono<VoidSE> releaseBody()
DataBufferUtils.release(DataBuffer)
<T> reactor.core.publisher.Mono<ResponseEntity<T>> toEntity(ClassSE<T> bodyClass)
ResponseEntity
として返します。T
- レスポンス本体型 bodyClass
- 予想されるレスポンス本文型 Mono
と ResponseEntity
<T> reactor.core.publisher.Mono<ResponseEntity<T>> toEntity(ParameterizedTypeReference<T> bodyTypeReference)
ResponseEntity
として返します。T
- レスポンス本体型 bodyTypeReference
- 予想されるレスポンス本文の種類を説明する型参照 Mono
と ResponseEntity
<T> reactor.core.publisher.Mono<ResponseEntity<ListSE<T>>> toEntityList(ClassSE<T> elementClass)
ResponseEntity
の遅延リストとして返します。T
- リスト内の要素の型 elementClass
- 予想されるレスポンス本文リスト要素クラス ResponseEntity
のリストを持つ Mono
<T> reactor.core.publisher.Mono<ResponseEntity<ListSE<T>>> toEntityList(ParameterizedTypeReference<T> elementTypeRef)
ResponseEntity
の遅延リストとして返します。T
- リスト内の要素の型 elementTypeRef
- 予想されるレスポンス本文リスト要素の参照型 ResponseEntity
のリストを持つ Mono
reactor.core.publisher.Mono<ResponseEntity<VoidSE>> toBodilessEntity()
ResponseEntity
として返します。このメソッドを呼び出すと、レスポンスの本文が解放されます。Mono
とボディレス ResponseEntity
reactor.core.publisher.Mono<WebClientResponseException> createException()
WebClientResponseException
を作成します。Mono
StringSE logPrefix()
接頭辞は ClientRequest.logPrefix() に基づいており、それ自体が LOG_ID_ATTRIBUTE
リクエスト属性の値に基づいており、さらに "[" と "]" で囲まれています。
LOG_ID_ATTRIBUTE
が設定されていない場合は空の文字列 default ClientResponse.Builder mutate()
@DeprecatedSE static ClientResponse.Builder from(ClientResponse other)
mutate()
が優先されます。 注意 : 返されるビルダーの本体はデフォルトで Flux.empty()
であることに注意してください。元のレスポンスから 1 つを引き継ぐには、otherResponse.bodyToFlux(DataBuffer.class)
を使用するか、単にインスタンスベースの mutate()
メソッドを使用します。
other
- ステータス、ヘッダー、Cookie をコピーするレスポンス static ClientResponse.Builder create(HttpStatus statusCode)
statusCode
- ステータスコード static ClientResponse.Builder create(HttpStatus statusCode, ExchangeStrategies strategies)
statusCode
- ステータスコード strategies
- 戦略 static ClientResponse.Builder create(int statusCode, ExchangeStrategies strategies)
statusCode
- ステータスコード strategies
- 戦略 static ClientResponse.Builder create(HttpStatus statusCode, ListSE<HttpMessageReader<?>> messageReaders)
statusCode
- ステータスコード messageReaders
- メッセージリーダー