matlab.net.http.io.MultipartProvider クラス
名前空間: matlab.net.http.io
スーパークラス: matlab.net.http.io.ContentProvider
マルチパート/混在 HTTP メッセージを送信する ContentProvider
説明
このプロバイダーはマルチパート HTTP メッセージの作成で役立ちます。
既定の Content-Type は "multipart/mixed" です。メッセージのペイロードには任意の数のパートが含まれ、各パートにはそのパートを記述する独自のヘッダーが含まれています。マルチパート メッセージの詳細については、RFC Editor 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 で導入
