-
- すべてのスーパー・インタフェース:
Flow.Publisher<ByteBuffer>
- 含まれているクラス:
- HttpRequest
public static interface HttpRequest.BodyPublisher extends Flow.Publisher<ByteBuffer>
BodyPublisher
は、上位レベルのJavaオブジェクトをリクエスト本文として送信するのに適したバイト・バッファのフローに変換します。 クラスBodyPublishers
は、多くの共通パブリッシャの実装を提供します。BodyPublisher
インタフェースはFlow.Publisher<ByteBuffer>
を拡張しており、BodyPublisher
は「バイト・バッファ」のパブリッシャとして機能します。本文を含むリクエストを送信する場合、HTTPクライアントは、送信リクエスト本文データのフローを受信するためにリクエスト
BodyPublisher
をサブスクライブします。Flow.Subscriber
およびFlow.Publisher
の通常のセマンティック・スはHTTPクライアントによって実装され、BodyPublisher
実装から期待されます。 各送信リクエストは、リクエスト本文を含むバイト・バッファの順序を示すために、1つのHTTPクライアントSubscriber
をBodyPublisher
にサブスクライブします。 パブリッシャによって公開されたByteBuffer
のインスタンスは、パブリッシャによって割り当てられる必要があり、HTTPクライアントにパブリッシュされた後でアクセスできないようにする必要があります。 これらのサブスクリプションは、通常、リクエスト本文が完全に送信されたときに完了し、取消しや終了をエラーによって行うことができます。 何らかの理由でリクエストを再送信する必要がある場合、以前と同じデータを生成すると予想される新しいサブスクリプションが作成されます。「内容の長さ」 of
0
をレポートするBodyPublisher
は、パブリッシュするデータが効果的にないため、HTTPクライアントによってサブスクライブされないことがあります。- 導入されたバージョン:
- 11
- 関連項目:
HttpRequest.BodyPublishers
-
-
メソッドのサマリー
すべてのメソッド インスタンス・メソッド 抽象メソッド 修飾子と型 メソッド 説明 long
contentLength()
このリクエスト本文のコンテンツ長を返します。-
インタフェース java.util.concurrent.Flow.Publisherで宣言されたメソッド
subscribe
-
-