Main Content

delegateTo

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

委托给另一个提供程序

说明

[getDataFnc,length] = delegateTo(provider,delegate,URI) 设置一个 delegate 形式的 ContentProvider 以提供 RequestMessage 中的全部或部分后续数据。此方法使用此对象的属性和提供的参数来初始化代理中的属性(就像要使用该代理传输新消息一样),并调用 delegate 中的 completeexpectedContentLengthstart 方法。它返回函数 getDataFnc 的句柄,您可以调用该函数从代理中获取数据:

[data, stop] = getDataFcn(length)

其中的参量如 getData 中所述。您可以使用 length 的任何值,但通常在 getData 方法中进行此调用,传递的值与之前为您的方法传递的值相同。

要委托某个提供程序来提供一个消息的全部内容,请在 start 方法中调用 delegateTo。如果您使用代理来获取部分消息内容,请在 putData 方法中的适当时间调用 delegateTo

要从代理中获取数据,请始终使用返回的 getDataFnc。不要直接调用代理的 getData,因为代理可能通过其他方式提供数据。

[getDataFnc,length] = delegateTo(___,force) 指示 expectedContentLength 方法是否应返回数据的长度。

输入参数

全部展开

内容提供程序,指定为 matlab.net.http.io.ContentProvider 对象。

后续数据的提供程序,指定为 matlab.net.http.io.ContentProvider 对象。

正在处理的请求的目标,指定为 matlab.net.URI 对象。此值是提供给调用方的 complete 方法的 URI。

指示 expectedContentLength 方法是否应返回数据的长度,指定为 truefalsedelegateTo 方法将此值传递给 expectedContentLength

输出参量

全部展开

用来从代理中获取数据的函数,以函数句柄形式返回。

expectedContentLength 方法返回的值,以字节形式返回。有关详细信息,请参阅 ContentProvider.expectedContentLengthlength 输出参量。

属性

Accessprotected

版本历史记录

在 R2018a 中推出