public abstract class BodyInserters extends ObjectSE
BodyInserter
実装の静的ファクトリメソッド。修飾子と型 | クラスと説明 |
---|---|
static interface | BodyInserters.FormInserter<T> フォームデータまたはマルチパートフォームデータの追加を可能にする BodyInserter の拡張。 |
static interface | BodyInserters.MultipartInserter 非同期パーツの追加を可能にする BodyInserters.FormInserter の拡張。 |
コンストラクターと説明 |
---|
BodyInserters() |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
public static <T> BodyInserter<T,ReactiveHttpOutputMessage> empty()
public static <T> BodyInserter<T,ReactiveHttpOutputMessage> fromValue(T body)
または、WebClient
および ServerResponse
で bodyValue(Object)
ショートカットを使用することを検討してください。
T
- 体の種類 body
- 書き込む値 IllegalArgumentExceptionSE
- body
が Publisher
または ReactiveAdapterRegistry.getSharedInstance()
でサポートされている型のインスタンスである場合、fromPublisher(Publisher, Class)
または fromProducer(Object, Class)
を使用する必要があります。fromPublisher(Publisher, Class)
, fromProducer(Object, Class)
@DeprecatedSE public static <T> BodyInserter<T,ReactiveHttpOutputMessage> fromObject(T body)
fromValue(Object)
を推奨 または、WebClient
および ServerResponse
で bodyValue(Object)
ショートカットを使用することを検討してください。
T
- 体の種類 body
- レスポンスに書き込む本文 IllegalArgumentExceptionSE
- body
が Publisher
または ReactiveAdapterRegistry.getSharedInstance()
でサポートされている型のインスタンスである場合、fromPublisher(Publisher, Class)
または fromProducer(Object, Class)
を使用する必要があります。fromPublisher(Publisher, Class)
, fromProducer(Object, Class)
public static <T> BodyInserter<T,ReactiveHttpOutputMessage> fromProducer(T producer, ClassSE<?> elementClass)
Publisher
または ReactiveAdapterRegistry
を介して Publisher
に適応可能な別のプロデューサーでなければならない値の指定されたプロデューサーを書き込むためのインサーター。 または、WebClient
および ServerResponse
で body
ショートカットを使用することを検討してください。
T
- 体の種類 producer
- ボディ値のソース。elementClass
- 生成される値のクラス public static <T> BodyInserter<T,ReactiveHttpOutputMessage> fromProducer(T producer, ParameterizedTypeReference<?> elementTypeRef)
Publisher
または ReactiveAdapterRegistry
を介して Publisher
に適応可能な別のプロデューサーでなければならない値の指定されたプロデューサーを書き込むためのインサーター。 または、WebClient
および ServerResponse
で body
ショートカットを使用することを検討してください。
T
- 体の種類 producer
- ボディ値のソース。elementTypeRef
- 生成される値の型 public static <T,P extends Publisher<T>> BodyInserter<P,ReactiveHttpOutputMessage> fromPublisher(P publisher, ClassSE<T> elementClass)
Publisher
を書き込むためのインサーター。 または、WebClient
および ServerResponse
で body
ショートカットを使用することを検討してください。
T
- パブリッシャーに含まれる要素の型 P
- Publisher
型 publisher
- 一緒に書くパブリッシャー elementClass
- パブリッシャーの要素のクラス Publisher
を書き込むための挿入子 public static <T,P extends Publisher<T>> BodyInserter<P,ReactiveHttpOutputMessage> fromPublisher(P publisher, ParameterizedTypeReference<T> elementTypeRef)
Publisher
を書き込むためのインサーター。 または、WebClient
および ServerResponse
で body
ショートカットを使用することを検討してください。
T
- パブリッシャーに含まれる要素の型 P
- Publisher
型 publisher
- 一緒に書くパブリッシャー elementTypeRef
- パブリッシャーに含まれる要素の型 Publisher
を書き込むための挿入子 public static <T extends Resource> BodyInserter<T,ReactiveHttpOutputMessage> fromResource(T resource)
T
- Resource
の型 resource
- 出力メッセージに書き込むリソース Publisher
を書き込むための挿入子 public static <T,S extends Publisher<ServerSentEvent<T>>> BodyInserter<S,ServerHttpResponse> fromServerSentEvents(S eventsPublisher)
ServerSentEvent
パブリッシャーを書き込むインサーター。 または、fromPublisher(Publisher, Class)
または fromProducer(Object, Class)
を介してイベントデータオブジェクトを提供し、"Content-Type" を text/event-stream
に設定できます。
T
- ServerSentEvent
のデータ要素の型 eventsPublisher
- レスポンス本文に書き込む ServerSentEvent
パブリッシャー ServerSentEvent
パブリッシャーを作成するためのインサーター public static BodyInserters.FormInserter<StringSE> fromFormData(MultiValueMap<StringSE,StringSE> formData)
BodyInserters.FormInserter
を返し、指定された MultiValueMap
を URL エンコードされたフォームデータとして書き込みます。返された挿入子により、BodyInserters.FormInserter.with(String, Object)
を介して追加のエントリを追加できます。WebClient
と WebTestClient
の両方のリクエストビルダーで bodyValue(Object)
メソッドを使用することもできます。その場合、リクエストのコンテンツ型の設定も不要です。マップに文字列値のみが含まれていることを確認してください。そうでない場合、マルチパートリクエストとして解釈されます。
formData
- 出力メッセージに書き込むフォームデータ public static BodyInserters.FormInserter<StringSE> fromFormData(StringSE name, StringSE value)
BodyInserters.FormInserter
を返し、指定されたキーと値のペアを URL エンコードされたフォームデータとして書き込みます。返された挿入子により、BodyInserters.FormInserter.with(String, Object)
を介して追加のエントリを追加できます。name
- フォームに追加するキー value
- フォームに追加する値 public static BodyInserters.MultipartInserter fromMultipartData(MultiValueMap<StringSE,?> multipartData)
BodyInserters.MultipartInserter
を返し、指定された MultiValueMap
をマルチパートデータとして書き込みます。マップの値は、オブジェクトまたは HttpEntity
です。MultipartBodyBuilder
を使用して外部でマルチパートデータを作成し、結果のマップを WebClient
の bodyValue(Object)
ショートカットメソッドに直接渡すこともできます。
multipartData
- 出力メッセージに書き込むフォームデータ MultipartBodyBuilder
public static BodyInserters.MultipartInserter fromMultipartData(StringSE name, ObjectSE value)
BodyInserters.MultipartInserter
を返し、指定されたパートをマルチパートデータとして書き込みます。マップの値は、オブジェクトまたは HttpEntity
です。MultipartBodyBuilder
を使用して外部でマルチパートデータを作成し、結果のマップを WebClient
の bodyValue(Object)
ショートカットメソッドに直接渡すこともできます。
name
- パーツ名 value
- パーツ値、オブジェクトまたは HttpEntity
public static <T,P extends Publisher<T>> BodyInserters.MultipartInserter fromMultipartAsyncData(StringSE name, P publisher, ClassSE<T> elementClass)
BodyInserters.MultipartInserter
を返し、指定された非同期パートをマルチパートデータとして書き込みます。MultipartBodyBuilder
を使用して外部でマルチパートデータを作成し、結果のマップを WebClient
の bodyValue(Object)
ショートカットメソッドに直接渡すこともできます。
name
- パーツ名 publisher
- パーツ値を形成する発行者 elementClass
- publisher
に含まれるクラス public static <T,P extends Publisher<T>> BodyInserters.MultipartInserter fromMultipartAsyncData(StringSE name, P publisher, ParameterizedTypeReference<T> typeReference)
ParameterizedTypeReference
を受け入れる fromMultipartAsyncData(String, Publisher, Class)
のバリアント。これにより、一般的な型情報を指定できます。MultipartBodyBuilder
を使用して外部でマルチパートデータを作成し、結果のマップを WebClient
の bodyValue(Object)
ショートカットメソッドに直接渡すこともできます。
name
- パーツ名 publisher
- パーツ値を形成する発行者 typeReference
- publisher
に含まれる型 public static <T extends Publisher<DataBuffer>> BodyInserter<T,ReactiveHttpOutputMessage> fromDataBuffers(T publisher)
Publisher<DataBuffer>
を本文に書き込むための挿入子。T
- パブリッシャーの型 publisher
- 書き込むデータバッファパブリッシャー ReactiveHttpOutputMessage.writeWith(Publisher)