このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
matlab.net.http.io.MultipartProvider クラス
名前空間: matlab.net.http.io
スーパークラス: matlab.net.http.io.ContentProvider
マルチパート/混在 HTTP メッセージを送信する ContentProvider
説明
このプロバイダーはマルチパート HTTP メッセージの作成で役立ちます。
既定の Content-Type は "multipart/mixed"
です。メッセージのペイロードには任意の数のパートが含まれ、各パートにはそのパートを記述する独自のヘッダーが含まれています。マルチパート メッセージの詳細については、Internet Engineering Task Force (IETF®) Web サイトで RFC 2046、セクション 5.1 を参照してください。
このプロバイダーは、サーバーがマルチパート/混在メッセージを受け入れることが分かっている場合にのみ直接使用します。通常、マルチパート メッセージを受け入れるサーバーでは、代わりにサブクラス MultipartFormProvider
で実装される "multipart/form-data"
を必要とします。サブクラスを使用して他のマルチパート タイプを実装できます。
matlab.net.http.io.MultipartProvider
クラスは handle
クラスです。
サブクラスの作成
マルチパート メッセージの各パートは、RequestMessage.Body
で許可される任意の形式のデータとして、またはデータを作成する ContentProvider
として指定できます。パーツにデータを提供するために使用する ContentProvider
オブジェクトはデリゲートと呼ばれる一方、この MultipartProvider
は最上位レベルのプロバイダーです。一般に、どの ContentProvider
もデリゲートとして適切です。MultipartProvider
はメッセージの送信中に各デリゲートを順に呼び出し、complete
や start
など、そのメソッドを呼び出すため、デリゲートは通常、メッセージ全体に対してではなく、1 つのパートに対して内容を提供していることを覚えておく必要はありません。
このプロバイダーは RequestMessage
を常にチャンク化された状態で送信するため、Content-Length ヘッダー フィールドをメッセージまたは任意のパートのヘッダーに含めません。MultipartProvider
がパートを送信する前に各デリゲートの expectedContentLength
メソッドを呼び出す間、Content-Length フィールドを作成するためではなく、長さを強制するために戻り値 (空でない場合) のみを使用します。デリゲートで Content-Length フィールドをパートに表示させない場合、Header
プロパティにそのようなフィールドを明示的に挿入しなければなりません。MATLAB® で提供されるいずれの ContentProvider
サブクラスもこの処理を行いません。
作成
説明
provider = MultipartProvider(
は指定したパートを指定した順序で HTTP 要求で送信する part1,...,partN
)MultipartProvider
を作成します。既定では、このプロバイダーはメッセージの Content-Type を "multipart/mixed"
に設定しますが、サブクラスは Subtype
プロパティを設定してサブタイプを変更できます。コンストラクターは Parts
プロパティの cell 配列の要素を各 part1,...,partN
引数に設定します。
プロパティ
メソッド
詳細
バージョン履歴
R2018a で導入