S - 仕様型への自己参照 public static interface WebClient.RequestHeadersSpec<S extends WebClient.RequestHeadersSpec<S>>| 修飾子と型 | メソッドと説明 |
|---|---|
S | accept(MediaType... acceptableMediaTypes)Accept ヘッダーで指定されているように、受け入れ可能なメディア型のリストを設定します。 |
S | acceptCharset(CharsetSE... acceptableCharsets)Accept-Charset ヘッダーで指定されているように、受け入れ可能な文字SEセットのリストを設定します。 |
S | attribute(StringSE name, ObjectSE value) 指定された名前の属性に指定された値を設定します。 |
S | attributes(ConsumerSE<MapSE<StringSE, ObjectSE>> attributesConsumer) これまでに宣言されたすべての属性へのアクセスを提供し、値を追加、置換、削除する機能があります。 |
S | cookie(StringSE name, StringSE value) 指定された名前と値で Cookie を追加します。 |
S | cookies(ConsumerSE<MultiValueMap<StringSE, StringSE>> cookiesConsumer) これまでに宣言されたすべての Cookie へのアクセスを提供し、値を追加、置換、削除する機能があります。 |
reactor.core.publisher.Mono<ClientResponse> | exchange()HTTP リクエストを実行し、レスポンスステータスとヘッダーを含む ClientResponse を返します。 |
S | header(StringSE headerName, StringSE... headerValues) 指定された名前に、指定された単一のヘッダー値を追加します。 |
S | headers(ConsumerSE<HttpHeaders> headersConsumer) これまでに宣言されたすべてのヘッダーへのアクセスを提供し、値を追加、置換、削除できます。 |
S | ifModifiedSince(ZonedDateTimeSE ifModifiedSince)If-Modified-Since ヘッダーの値を設定します。 |
S | ifNoneMatch(StringSE... ifNoneMatches)If-None-Match ヘッダーの値を設定します。 |
WebClient.ResponseSpec | retrieve()HTTP リクエストを実行し、レスポンス本文を取得します。 |
S accept(MediaType... acceptableMediaTypes)
Accept ヘッダーで指定されているように、受け入れ可能なメディア型のリストを設定します。acceptableMediaTypes - 許容されるメディア型 S acceptCharset(CharsetSE... acceptableCharsets)
Accept-Charset ヘッダーで指定されているように、受け入れ可能な文字SEセットのリストを設定します。acceptableCharsets - 許容される文字セット S cookie(StringSE name, StringSE value)
name - クッキー名 value - クッキー値 S cookies(ConsumerSE<MultiValueMap<StringSE,StringSE>> cookiesConsumer)
cookiesConsumer - アクセスを提供するコンシューマー S ifModifiedSince(ZonedDateTimeSE ifModifiedSince)
If-Modified-Since ヘッダーの値を設定します。日付は、1970 年 1 月 1 日 GMT からのミリ秒数として指定する必要があります。
ifModifiedSince - ヘッダーの新しい値 S ifNoneMatch(StringSE... ifNoneMatches)
If-None-Match ヘッダーの値を設定します。ifNoneMatches - ヘッダーの新しい値 S header(StringSE headerName, StringSE... headerValues)
headerName - ヘッダー名 headerValues - ヘッダー値 S headers(ConsumerSE<HttpHeaders> headersConsumer)
headersConsumer - アクセスを提供するコンシューマー S attribute(StringSE name, ObjectSE value)
name - 追加する属性の名前 value - 追加する属性の値 S attributes(ConsumerSE<MapSE<StringSE,ObjectSE>> attributesConsumer)
attributesConsumer - アクセスを提供するコンシューマー WebClient.ResponseSpec retrieve()
Mono<Person> bodyMono = client.get()
.uri("/persons/1")
.accept(MediaType.APPLICATION_JSON)
.retrieve()
.bodyToMono(Person.class);
このメソッドは、exchange() を使用し、ClientResponse を介してレスポンス本文をデコードするショートカットです。
ResponseSpec は、本文のデコード方法を指定します exchange()reactor.core.publisher.Mono<ClientResponse> exchange()
ClientResponse を返します。その後、レスポンスのメソッドを使用してボディを消費できます。
Mono<Person> mono = client.get()
.uri("/persons/1")
.accept(MediaType.APPLICATION_JSON)
.exchange()
.flatMap(response -> response.bodyToMono(Person.class));
Flux<Person> flux = client.get()
.uri("/persons")
.accept(MediaType.APPLICATION_STREAM_JSON)
.exchange()
.flatMapMany(response -> response.bodyToFlux(Person.class));
注意 : retrieve() とは異なり、exchange() を使用する場合、シナリオ(成功、エラー、予期しないデータなど)に関係なく、レスポンスコンテンツを消費するのはアプリケーションの責任です。そうしないと、メモリリークが発生する可能性があります。ボディを消費するために使用可能なすべてのオプションのリストについては、ClientResponse を参照してください。exchange() を使用する正当な理由がない限り、一般に retrieve() を使用することをお勧めします。exchange() を使用すると、レスポンスをどのように、またはいつ消費するかを決定する前にレスポンスステータスとヘッダーを確認できます
Mono retrieve()