主要内容

matlab.net.http.io.ImageConsumer类

包:matlab.net.http.io
超类:matlab.net.http.io.ContentConsumer

HTTP有效负载中图像数据的使用者

描述

这个消费者从网上读取图像数据,并将其转换为MATLAB®图像数据。它将结果存储在身体财产的ResponseMessage它被应用于。中的消费者直接指定RequestMessage.send,它为默认情况下提供的图像内容类型提供相同的功能发送方法在未指定消费者时保存转换后的图像,并保存可能的色图和alpha通道的身体。数据,基于消息的Content-Type。有关响应中图像数据转换的更多信息,请参阅形象/*中的内容类型HTTP数据类型转换

此使用者仅接受其可以根据响应消息中的头或请求URI中的文件名扩展名(如果有)确定格式的数据。您可以通过在格式财产。

属性的返回值所描述的格式之一,该消费者将数据作为MATLAB图像返回伊姆雷德函数。若要将原始数据存储在文件中而不进行转换,请使用文件使用者

matlab.net.http.io.ImageConsumer类是一个手柄类。

创造

描述

消费者= ImageConsumer为HTTP映像构造一个消费者。

消费者= ImageConsumer (fmt构造一个图像消费者使用指定的格式。

消费者= ImageConsumer (_____arg1、…,argn传递所使用的其他参数伊姆雷德转换响应数据。

输入参数

全部展开

图像格式,指定为字符串或字符向量,由伊姆雷德。此值覆盖消息头中的任何格式规范。此构造函数设置格式财产的价值fmt

例子:“巴布亚新几内亚”

的一个或多个输入参数伊姆雷德函数,指定为有效的参数类型。请不要指定文件名fmt参数。

例子:'像素区域',{[1100],[4500]}

属性

全部展开

公共属性

所需的图像信息imfinfo函数,指定为结构。MATLAB只有在转换成功后才会设置这个属性。的文件名此结构中的字段为空。

属性:

GetAccess
公共
设置访问
私人

部分图像数据,指定为uint16.如果the conversion failed or the transfer was interrupted, then MATLAB sets部分数据接收到的原始数据uint8向量。部分数据在传输过程中或在成功的情况下可能不包含任何数据。

属性:

GetAccess
公共
设置访问
私人

图像格式,指定为字符串或字符向量。属性的EXT列中指定的格式不是格式的消息将被该消费者拒绝imformats函数。此属性的默认值为空,它试图从响应的Content-Type字段或Content-Disposition字段中的文件名扩展名或请求的URI派生格式。如果要强制此使用者使用特定格式处理数据,请在将此使用者应用于RequestMessage.send方法。

如果服务器没有正确指示格式,请将此属性设置为正确的格式。

属性:

GetAccess
公共
设置访问
公共

建议的缓冲区大小,指定为uint64.MATLAB集分配长度传递给的数据缓冲区的预期大小putData.实际大小可能更小或更大。为了提高性能,使用者可以使用这个值来预分配空间来处理数据。

MATLAB在调用开始方法以方便子类。

属性:

GetAccess
公共
设置访问
公共

有效负载的预期长度,指定为uint64. 该属性通常是价值财产的matlab.net.http.field.ContentLengthField标题财产。

如果ContentLength是空的,则长度是未知的。有效载荷在putData(uint8.empty)被称为。

MATLAB在调用之前设置此属性初始化,以方便子类了解数据的长度。

如果这ContentConsumer是顶级使用者的委托,则ContentLength可能不同于ContentLength顶级消费者的价值。

例子:努梅尔(someData)哪里someData是类型uint8

属性:

GetAccess
公共
设置访问
公共

有效负载的媒体类型,指定为matlab.net.http.MediaType对象。属性通常是价值财产的matlab.net.http.field.ContentTypeField标题如果ContentType属性为空,则ContentTypeField为空或不存在。

MATLAB在调用之前设置此属性初始化为了方便子类可能想要检查媒体类型.如果子类根据数据确定此属性属于不同的类型,则可以设置此属性媒体类型

在传输结束时,MATLAB将这个值复制到Response.Body.ContentType财产。

例子:的应用程序/八进制

属性:

GetAccess
公共
设置访问
公共

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

使用者使用此标头确定如何处理发送给他们的有效负载。对于顶级使用者,此值与响应.标题.对于委托,值可能不同。例如,在由MultipartConsumer,它是该委托正在处理的部分的头部。委托仍然可以进行检查响应.标题用于原始消息的报头。

MATLAB在调用之前设置此属性初始化,以方便子类。

属性:

GetAccess
公共
设置访问
公共

完成的RequestMessage这是发送的,指定为matlab.net.http.RequestMessage对象。这是决赛RequestMessage毕竟是重定向,这是completedrequest的返回值发送方法。

MATLAB在调用之前设置此属性初始化,以方便子类。

属性:

GetAccess
公共
设置访问
公共

ResponseMessage被处理的,指定为matlab.net.http.ResponseMessage对象。

MATLAB设置响应财产之前调用初始化.值是ResponseMessage在接收到报头之后但在接收任何有效负载之前。在响应消息处理的开始(或多部分消息的一部分的开始)ResponseMesssage。身体财产是一种财富消息体对象与空数据有效载荷属性。为了存储接收到的数据,消费者可以修改响应MessageBody。数据数据传输过程中的属性。通常,处理并存储数据集的消费者Response.Body.Data尽管这不是必需的,但仍将其添加到已处理的有效负载。在传输完成时,MATLAB返回响应给打电话的人发送.消费者不应修改他人响应的属性,如标题状态栏,因为这些更改将返回给的调用方发送

Response.Body.Payload属性在转移过程中为空,用户不应试图修改它。如果HTTPOptions。SavePayload属性设置,然后MATLAB设置有效载荷在消息或部分传输结束时(在调用putData(uint8.empty))或发生异常时。

如果在消息处理过程中消费者发生异常,则MATLAB抛出textbox对象。的历史属性包含这响应价值

如果使用者是处理部分多部分消息的委托,则响应.标题包含整个消息的标题,并且有效载荷数据的属性响应。身体在调用ContentConsumer对于每一个部分。在每一部分的结论,一个新的ResponseMessage添加到数组的末尾ResponseMessage初始响应中的的身体。数据包含标题从这个对象和身体从这个属性。下一个委托看到一个新的响应空空荡荡消息体,而不是前一个委托消息体

属性:

GetAccess
公共
设置访问
公共
依赖
真的

被处理请求的目的地,指定为matlab.net.URI此值是由确定的原始目标URI发送. 它不是代理的URI或重定向后的最终URI。

MATLAB在调用之前设置此属性初始化,以方便子类。

属性:

GetAccess
公共
设置访问
公共

受保护的属性

函数,指定为函数句柄,由putData方法以附加其他数据。的putData类中的方法调用附录函数将接收到的数据追加到数据参数指向响应消息中的现有数据。函数必须有签名:

newdata AppendFcn(消费者)

哪里newdata是要附加到位于的数组的数据consumer.Response.Body.Data。此方法负责更新消费者。CurrentLength以反映新的长度数据.如果newdata为空,表示流的结束,那么函数应该更新Response.Body.Data它的最终价值。

如果此属性为空,则默认行为使用内部函数处理数据作为支持金宝app霍斯卡特功能。它有效地增加了newdata通过预分配空间,维护CurrentLength为存储数据的实际长度。在消息的末尾,它进行截断Response.Body.DataCurrentLength

如果。子类可以更改此属性霍斯卡特不适用于追加进程。例如,当StringConsumer构造标量字符串时,它将使用功能代替霍斯卡特

不调用ContentConsumer.putData附加数据或满足要求的数据霍斯卡特追加数据时的行为可以忽略此属性。

例子:@customAppend哪里@customAppend由消费者定义

属性:

GetAccess
受保护的
设置访问
受保护的

ContentConsumer该消费者正在委托的对象,指定为matlab.net.http.io.ContentConsumer对象。的delegateTo调用使用者(委托者)的方法设置当前代表如果re is no current delegation, then the value is[]

MATLAB集当前代表[]在调用之前初始化

属性:

GetAccess
受保护的
设置访问
受保护的

中当前数据的长度Response.Body.Data属性,指定为uint64

Response.Body.Data已预分配的大小大于当前存储的实际数据量,以指示存储的数据的长度。如果此属性为空,则表示所有Response.Body.Data包含存储的数据或ContentConsumer子类以某种方式处理数据而不是将数据存储在其中Response.Body.Data

此属性由putData方法附录属性为空。这是为了调用putData并希望检查已存储的数据和/或的任何实现附录保持结果Response.Body.Data

子类使用putData也可以修改此属性以重置数据存储在缓冲区中的位置。例如,当默认附录函数时,一个子类处理所有Response.Body.Data每次呼叫putData可能不再使用原始数据,所以它可以重置CurrentLength属性为1,以便下一个putData调用将用新数据覆盖缓冲区。无需清除缓冲区中超过新数据末尾的元素。

不调用的子类putData可以使用此属性跟踪自己的数据,也可以不设置(空)。MATLAB没有对可以在这里设置的值施加任何约束,除了确定默认值之外,没有将其用于任何目的附录应该存储下一个缓冲区的数据,以及在消息的末尾在哪里截断数据。在最终调用之前将此属性设置为空putData(uint8.empty)以防止数据被截断。

MATLAB在每次调用之前将此属性设置为空初始化

属性:

GetAccess
受保护的
设置访问
受保护的

ContentConsumer委托给这个消费者,指定为matlab.net.http.io.ContentConsumer对象如果此使用者是由另一使用者调用的委托,例如GenericConsumerMultipartConsumer,则这是呼叫消费者。它在调用中指定的顶级使用者中为空发送

委托可以使用此属性访问委托的属性,例如,确定委托给它们的消费者是哪个。

属性:

GetAccess
受保护的
设置访问
受保护的

方法

全部展开

更多关于

全部展开

介绍了R2018a