Main Content

delegateTo

类: matlab.net.http.io.ContentConsumer
命名空间: matlab.net.http.io

委托给另一个使用程序

语法

[OK,bufsize] = delegateTo(consumer,delegate,header)

说明

[OK,bufsize] = delegateTo(consumer,delegate,header)delegate 配置为基于 header 来处理后续有效负载的使用程序。consumer 成为委托方,delegate 成为代理。

要配置代理,delegateTo 需要设置以下属性。

  • consumer.CurrentDelegate 设置为 delegate

  • delegate.Header 设置为 header 的值

  • delegate.MyDelegator 设置为 consumer

  • delegate 属性(如 RequestResponseURI)设置为相应的 consumer 属性

delegateTo 然后调用代理的 initialize 方法。如果 initialize 返回 true(表明代理接受该消息),则 delegateTo 调用 start 方法。

只有在通知第一个代理数据已结束后,才能在其他代理中调用 delegateTo。要完成此操作,请调用 delegate.putData(uint8.empty)

代理的 initialize 方法设置 OK,代理的 start 方法设置 bufsize。仅当 OKtrue 时,bufsize 才有效。如果 OKfalse,则说明未调用 start 方法,此使用程序不应在该代理中调用 putData

输入参数

全部展开

内容使用程序,指定为 matlab.net.http.io.ContentConsumer 对象。

处理有效负载的使用程序,指定为 matlab.net.http.io.ContentConsumer 对象或指定为返回 ContentConsumer 的函数的句柄。如果是函数,则它没有输入参量。

当前正在处理的有效负载的标头,指定为 matlab.net.http.HeaderField 对象。

输出参量

全部展开

指示使用程序是接受还是拒绝消息的有效负载,返回为 truefalse。如果 ResponseMessage 的状态代码为 StatusCode.OK,则默认值为 true

如果 OKtrue,则在每次调用时、在切换到新代理之前或者在消息结束时,调用方必须明确调用 delegate.putData,以便将数据馈送给代理,如果需要,还要将代理插入到其 Response.Body 中的任何数据复制回调用方的 Response 中。

如果 OKfalse 或者上一个代理已被告知数据已结束,则使用程序可以调用 delegateTo,从而调用另一个代理来处理同一个消息中的后续(或相同)数据。

最大缓冲区大小,返回为双精度值。

属性

Accessprotected

版本历史记录

在 R2018a 中推出