パッケージ:matlab.net.http.io
スーパークラス:matlab.net.http.io.contentConsumer.
HTTPメッセージの複数のコンテンツタイプのコンシューマー
サーバーによって返されるタイプを事前に予測できないときに,このコンシューマーを使用して複数のコンテンツタイプのストリーミングを処理します。
matlab.net.http.io.GenericConsumer
クラスは处理
クラスです。
消费者= GenericConsumer.
は既定のコンシューマーを使用してGenericConsumer
を作成します。
消费者= GenericConsumer (
は,このコンシューマーのputhandle.
)putData
メソッドの呼び出しごとにputhandle.
によって指定される関数を呼び出すContentConsumer
を构筑します。
类型
- - - - - -コンテンツタイプコンテンツタイプ.String配列,文章ベクトルまたは文章ベクトルベクトル细胞类型
は,構文“类型/子类型”
を使用してコンテンツタイプを指定します。
类型
の各要素のタイプコンポーネントとサブタイプコンポーネントは正規表現として扱われ,応答のContentTypeField
のタイプ/サブタイプととされますます。そのその,タイプまたはサブタイプに指定れた単独ののののののまたはまたはサブに致ししししししでで字字列始位置文列终列终位置の両端に固定さます。
タイプ/サブタイプ |
一道するもの |
---|---|
文本/ * |
タイプ“文本” と任意のサブタイプ |
* / * json。* |
任意のタイプとjson的 が含まれるサブタイプ |
* / * json |
任意のタイプとjson的 で终わるサブタイプ |
* / * |
任意のタイプまたはサブタイプ |
サブタイプが'*'
である结合,末尾の“/ *”
を省略することができます。文本
は“文本/ *”
と同じです。
类型
は,表示される順番に検索され,最初に一致するものが使用されます。指定されたタイプの中に一致するものがない場合は,タイプに応じて,既定のコンシューマーセットが次の順番で使用されます。
タイプ/サブタイプ |
既定のコンシューマー |
---|---|
MultiPart / * |
MultipartConsumer |
图像/ * |
ImageConsumer |
* json。* * / |
JSONConsumer |
* / * |
StringConsumer |
* / * |
BinaryConsumer |
StringConsumer
とBinaryConsumer
の両方が任意のタイプで使用されますが,StringConsumer
が受け入れるタイプははを特价できるタイプのみであり,文本/ *
字符集,属性をもつ任意のタイプ,あるいはMATLABによって文字ベースであると認識されているいずれかのタイプ(“application / xml”
や“应用程序/ javascript”
など)として指定します。StringConsumer
がタイプを棄却した場合,BinaryConsumer
がそのタイプを受け入れ,未変换のペイロードをresponse.body.data.
にuint8.
ベクトルとして格納します。
このこのコンシューマーがこのこの検索条件にづいて致致するデリゲート选択すると,デリゲートデリゲート初始化
メソッドが呼び出され,デリゲートがそのペイロードを受け入れるかどうかが確認されます。デリゲートが受け入れないことを示す假
がメソッドから返された場合,このコンシューマーは引き続きリストを検索し,一致する次のデリゲートを見つけます。
消费者
- - - - - -コンテンツコンシューマーmatlab.net.http.io.contentConsumer.
|関数ハンドルコンテンツコンシューマー。指定されたタイプのいずれかを処理できるmatlab.net.http.io.contentConsumer.
オブジェクト,またはこれらのタイプをを定理できるContentConsumer
を返す关关へのとしてとしてします。
puthandle.
- - - - - -关节普陀次のcontentConsumer.putData.putdata.
构文をもつ关键词のハンドル。
[长度,停止] = PUTDATA(数据)
数据
はuint8.
の配列,长度
はその配列の长さです。
この構文を使用して,サーバーが返すデータ型がわかっている場合に,1つの関数を使用してサーバーからのすべての入力を処理します。関数は,ResponseMessage
またはこのコンシューマーに关键词ににはアクセスできませませ
AllocationLength
- - - - - -推奨されるバッファーサイズUINT64
ContentLength.
- - - - - -想定されるペイロードの长さUINT64
|空想定されるペイロードの长さ。UINT64
として指定されます。このプロパティは通常、标题
プロパティにおけるmatlab.net.http.field.ContentLengthField
の价值
プロパティになります。
ContentLength.
が空の场合,长さは不明です。ペイロードペイロードPutdata(Uint8.empty)
が呼び出された時点で終了します。
このプロパティは,サブクラスでデータの長さを確認できるように,初始化
を呼び出す前にMATLABで设定されます。
このContentConsumer
が最上位のコンシューマーのデリゲートである场合书,ContentLength.
の値が最上位のコンシューマーのContentLength.
と異なる値になることがあります。
例:元素个数(someData)
。ここここ,一些数据
はuint8.
型です。
Getaccess. |
民众
|
setaccess. |
民众
|
内容类型
- - - - - -ペイロードのメディアタイプmatlab.net.http.MediaType
|空ペイロードのメディアタイプ。matlab.net.http.MediaType
オブジェクトとして指定します。このこのプロパティ通讯,标题
プロパティにおけるmatlab.net.http.field.ContentTypeField
の价值
プロパティになります。内容类型
プロパティプロパティ空のの合,ContentTypeField
は空または现处于しません。
このプロパティは,サブクラスで媒体类型
を确认できるように,初始化
を呼び出す前にmatlabで设定されます。データデータから别媒体类型
であることがわかった場合は,サブクラスでこのプロパティを設定できます。
この値は,転送の终了时にmatlabによってResponse.Body.ContentType
プロパティにコピーされます。
例:的应用程序/八进制
Getaccess. |
民众
|
setaccess. |
民众
|
标题
- - - - - -现代监理中のペイロードのヘッダーmatlab.net.http.HeaderField
现代监理中のペイロードの。matlab.net.http.HeaderField
オブジェクトとして指定されます。
コンシューマーは,このヘッダーを使用して,送られてくるペイロードの処理方法を決定します。最上位のコンシューマーの場合,この値は响应.Header.
たとえばの场なります。たとえば,MultipartConsumer
で処理されるマルチパートメッセージの場合は,そのデリゲートで処理中のパートのヘッダーになります。デリゲートは引き続き响应.Header.
で元のメッセージのヘッダーを確認できます。
このプロパティは,サブクラスで利用できるように,初始化
を呼び出す前にMATLABで设定されます。
Getaccess. |
民众
|
setaccess. |
民众
|
要求
- - - - - -诚信がが完了しRequestMessage
matlab.net.http.RequestMessage
诚信がが完了しRequestMessage
。matlab.net.http.RequestMessage
オブジェクトとして指定します。これは,すべてのリダイレクトが完了した最終的なRequestMessage
であり,发送
メソッドからのcompletedrequest
戻り値です。
このプロパティは,サブクラスで利用できるように,初始化
を呼び出す前にMATLABで设定されます。
Getaccess. |
民众
|
setaccess. |
民众
|
回复
- - - - - -処理中のResponseMessage
matlab.net.http.ResponseMessage
処理中のResponseMessage
。matlab.net.http.ResponseMessage
オブジェクトとして指定します。
回复
プロパティは,初始化
を呼び出す前にmatlabで设定されます。この値は,ヘッダーのの信まで完了,ペイロードをを信する前前ResponseMessage
になります。応答メッセージの処理の開始時(マルチパートメッセージの場合はパートの開始時)に,ResponseMesssage。身体
プロパティは,数据
プロパティと有效载荷
プロパティが空のMessageBody
オブジェクトになります。诚信したデータを格式するするため,コンシューマーはデータ転送中に回复
プロパティとmessagebody.data.data.
プロパティを変更できます。通常,コンシューマーはデータセットresponse.body.data.
ををに格式します,これは必须ません,このが完了と,この回复
がmatlabから发送
の呼び出し元に返されます。回复
の标题
や状态线
などの他のは,コンシューマーで変更しないで。发送
の呼び出し元に返されます。
Response.Body.Payload
プロパティは転送中は空であり,コンシューマーで変更してはなりません。httpoptions.SavePayload.
プロパティプロパティが设定される,次次matlabは,メッセージまたはパートの転送终了时(Putdata(Uint8.empty)
の呼び出し後),または例外の発生時に,受信したペイロードに有效载荷
を设定します。
メッセージの処理中にコンシューマーで例外が発生した場合は,MATLABからtextbox
オブジェクトがスローされます。历史
プロパティにはこの回复
値が含まれます。
コンシューマーがマルチパートメッセージのパートを処理するデリゲートの場合,响应.Header.
にメッセージ全体のヘッダーが格納され,各パートのContentConsumer
を呼び出す前に响应
の有效载荷
プロパティと数据
プロパティがクリアされます。各各パートの最后,元元応答のBody.Data.
にあるResponseMessage
オブジェクトの配列の末尾に,このオブジェクトの标题
およびこのプロパティの身体
を含む,新闻ResponseMessage
が追加されます。次次のデリゲートで,前のデリゲートのMessageBody
ではなく空のMessageBody
を含む新規の回复
が確認されます。
Getaccess. |
民众
|
setaccess. |
民众
|
依赖 |
真正的
|
URI
- - - - - -管理中の要求のの信先matlab.net.uri.
管理中の要求のの信先。matlab.net.uri.
オブジェクトオブジェクトとして指定されれこの値は,发送
で決定される元の送信先URIの値になります。プロキシのURIやリダイレクト後の最終的なURIではありません。
このプロパティは,サブクラスで利用できるように,初始化
を呼び出す前にMATLABで设定されます。
Getaccess. |
民众
|
setaccess. |
民众
|
PutMethod
- - - - - -putData
メソッド[]
デリゲートのputData
メソッド。関数ハンドルとして指定するか、CurrentDelegate.
が設定されている場合は[]
として指定します。
このプロパティはdelegateTo
によって設定されます。サブクラスはそれぞれのputData
メソッドでこの関数を呼び出し,データをデリゲートに送信するか,UINT8.PEMPTY.
を送信してデータのデリゲートの部分を终了しなければなりません。
[len,stop] = obj.putmethod(数据);
メッセージの最后で,任意のデリゲートに対する上记のでメッセージを终了终了た,サブクラスはPutMethod
を空に设定し,それぞれのスーパークラスで呼び出しPutdata(Uint8.empty)
を起動して,メッセージが終了したことをこのクラスが認識するようにしなければなりません。このputData
呼び出しはPutMethod
をを空のままににする,コンストラクターに渡されたputhandle.
引数に戻し。
Getaccess. |
受保护的
|
setaccess. |
受保护的
|
依赖 |
真正的
|
Appendfcn.
- - - - - -データデータ追加するためにputData
で呼び出される関数データデータ追加するためにputData
メソッドメソッド呼び出される关。关键词として指定れます。このこのクラスputData
メソッドは,数据
引数で受け取ったデータを応答メッセージの既存のデータに追加するために関数Appendfcn.
を呼び出します。この関数のシグネチャは次のとおりでなければなりません。
newdata AppendFcn(消费者)
新数据
は,consumer.Response.Body.Data
の配列に追加されるデータです。このメソッドは,数据
の新しい長さに合わせて消费者.CurrentLength.
を更新する必要があります。新数据
が空の場合はストリームの末尾を示し,関数によりresponse.body.data.
が最终的な値に更新されます。
既定の动作で,数据
を任意の値の配列として扱う,関数霍罗斯克
に対応した内部关联数量使使さます。この关键词,スペースを事前に割り当てること效率效率新数据
が追加され,格納されたデータの実際の長さがCurrentLength
に反映されます。メッセージメッセージの最后,response.body.data.
がCurrentLength
の値までで切り捨てられます。
霍罗斯克
が追加処理に適さない場合は,このプロパティをサブクラスで変更できます。たとえば,StringConsumer
でスカラー弦を作物成する合并は,弦への加值に关联霍罗斯克
ではなく関数+
を使用することがあります。
データデータ追加するcontentConsumer.putData.putdata.
を呼び出さない場合やデータを追加する際の霍罗斯克
の动作に问题がない场合は,サブクラスでこのプロパティを无视することができます。
例:@customappend.
。@customappend.
はコンシューマーによって定義されます。
Getaccess. |
受保护的
|
setaccess. |
受保护的
|
CurrentDelegate.
- - - - - -このこのコンシューマーによるデリゲート先のContentConsumer
matlab.net.http.io.contentConsumer.
|[]
このこのコンシューマーによるデリゲート先のContentConsumer
。matlab.net.http.io.contentConsumer.
オブジェクトオブジェクトとして指定しし呼び出し元のの(デリゲーター)のdelegateTo
メソッドによってCurrentDelegate.
プロパティが设定されます。现处于のデリゲーションがないない合,値は[]
です。
MATLABは初始化
を呼び出す前にCurrentDelegate.
を[]
に设定します。
Getaccess. |
受保护的
|
setaccess. |
受保护的
|
CurrentLength
- - - - - -response.body.data.
の現在のデータの長さUINT64.PEMPTY.
(既定値) |UINT64
response.body.data.
プロパティの现处于ののデータの长长。UINT64
として指定されます。
このプロパティは,response.body.data.
。response.body.data.
にデータが格納されているか,ContentConsumer
サブクラスでresponse.body.data.
に格纳する以外の何らかの方法でデータが破弃されていることを示します。
このプロパティは,この基底クラスのputData
メソッドで,Appendfcn.
プロパティが空の場合に使用および設定されます。putData
|Appendfcn.
の任意の実装でresponse.body.data.
に結果を反映したりするのに使用できます。
putData
を使用するサブクラスでは,このプロパティを変更してデータが格納されるバッファーの位置をリセットすることもできます。たとえば,既定の関数Appendfcn.
を使用している場合,putData
のの呼び出しごとにすべてのresponse.body.data.
CurrentLength
プロパティを1にリセットすることで次putData
の呼び出し时尚新しいでバッファーを上书できできできのを越えの要素クリアする必要ありませんするありません。
putData
を呼び出さないサブクラスでは,このプロパティを独自のデータの追跡に使用できます。使用しない場合は未設定(空)のままにしておいてかまいません。ここで設定できる値に関して,MATLABにはいかなる制約もありません。また,この値は,既定のAppendfcn.
でデータの次のバッファーを格納する位置とメッセージの末尾のデータを切り捨てる位置を特定するためにのみ使用され,それ以外の目的には使用されません。データが切り捨てられないようにするには,Putdata(Uint8.empty)
の最後の呼び出しの前にこのプロパティを空に設定します。
このプロパティは,初始化
の各呼び出しの前にMATLABで空に設定されます。
Getaccess. |
受保护的
|
setaccess. |
受保护的
|
MyDelegator
- - - - - -このこのコンシューマーのデリゲート元のContentConsumer
matlab.net.http.io.contentConsumer.
|空このこのコンシューマーのデリゲート元のContentConsumer
。matlab.net.http.io.contentConsumer.
オブジェクトオブジェクトとして指定されれこのコンシューマーコンシューマーGenericConsumer
やMultipartConsumer
などの別のコンシューマーから呼び出されたデリゲートである場合,これは呼び出し側のコンシューマーを示します。发送
の呼び出しで指定された最上位のコンシューマーの場合は空になります。
デリゲートは,このプロパティを使用してデリゲーターのプロパティにアクセスし,デリゲート元のコンシューマーなどを確認できます。
Getaccess. |
受保护的
|
setaccess. |
受保护的
|
初始化 |
新闻httpペイロードのためのコンシューマーを设备 |
开始 |
GenericConsumerへのデータ転送を開始 |
putData |
genericconsumerのデータの次のバッファーを保存 |
delegateTo |
别别のコンシューマーへのデリゲート |
次のMATLABコマンドに対応するリンクがクリックされました。
コマンドをmatlabコマンドウィンドウににに力
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站表现。其他MathWorks国家网站不适合从您的位置访问。