主要内容

matlab.net.http.io.ImageProvider类

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

内容提供者发送MATLAB图像数据

描述

使用一个ImageProvider对象转换并发送MATLAB®图像数据在一个HTTPRequestMessage。这个提供程序将数据转换为一个标准的类型,根据请求的内容类型或属性指定在这个对象中。这个供应商也将一个图像文件转换成不同的格式。

默认情况下,如果你指定一个图像的内容类型RequestMessage例如,“图像/ jpeg”RequestMessage.Body是一个MessageBody包含你的图像数据,然后MATLAB假设MessageBody.Data适当的图像数据,试图把它。控制你的数据是如何转换的,使用一个ImageProviderRequestMessage.Body

如果RequestMessage不包含一个内容类型头字段,那么这个提供者将适当的图像内容类型添加到标题。否则,头字段不是修改和转换是在属性中指定的对象,即使它的值是不符合内容类型字段。

matlab.net.http.io.ImageProvider类是一个处理类。

创建

描述

提供者= ImageProvider (数据,__arg1、…, argN)创建一个提供者,将MATLAB图像数据指定的格式__arg1、…, argN,设置数据财产数据参数财产__arg1、…, argN

提供者= ImageProvider (文件名,__arg1、…, argN)获得的图像数据文件文件名并将其发送中指定的格式__arg1、…, argN或内容类型字段,设置文件名财产文件名

虽然这个提供者可以将一个文件在一个格式转换为另一种格式的数据,它不是被设计来发送一个图像文件。发送一个文件在不改变其类型,使用FileProvider

属性

全部展开

公共属性

这是指定的值作为数据参数构造函数,如果任何,或数据的转换文件名论点。将这个值设置为一个字符串标量或特征向量包含这个提供者发送消息。

如果一个子类作者想MATLAB调用之前设置该属性开始方法,然后设置值完整的方法。如果你改变这个属性,那么下一次调用的更改生效开始

属性:

GetAccess
公共
SetAccess
公共

的参数imwrite函数,指定为一个单元阵列。这是构造函数包含一个指定的值的参数作为记录列表imwrite,但省略图像数据和文件名称参数。

MATLAB调用子类之前作者可以设置这个属性开始例如,完整的。如果你改变这些值,然后更改不生效,直到下一个调用开始

属性:

GetAccess
公共
SetAccess
公共
依赖
真正的

包含图像数据文件的名称,指定为一个字符串。这是为指定的值文件名构造函数的参数,如果任何。它是只读的。

的格式文件名来源于文件扩展名,可能是不同的吗fmt论点__arg1、…, argN或消息中的内容类型。这个构造函数的语法允许你将一种格式的图像文件发送到服务器,预计它在一个不同的格式。然而,一些转换是不相容的。例如,你不能一个RGB文件如JPEG转换为一个GIF格式。

属性:

GetAccess
公共
SetAccess
私人

消息头字段或部分,指定为一个向量的一个或多个matlab.net.http.HeaderField对象。

这个属性只是作者使用的子类。MATLAB调用提供者的前设置这个属性完整的方法。对于non-multipart消息,MATLAB初始化该属性的内容Request.Header-任何matlab.net.http.field.GenericFields或empty-valued字段。的内容提供者使用这个属性来添加标题字段描述发送的数据,或将参数添加到已经在消息头字段。在一个委托MultipartProvider,MATLAB初始化这个属性的头字段授权提供者打算插入部分。代表们可以修改或改变这些字段。

从提供者的回来完整的方法,如果这不是一个多部分消息,MATLAB读取这个属性和合并其内容的标题请求。在这个领域的名字不已经出现Request.Header被添加到年底吗Request.Header。如果一个字段有一个的名字这是一样的Request.Header,都有非空的,那么:

  • 如果一个在Request.Header是一个GenericField,然后忽略的

  • 如果一个在Request.Header不是一个GenericField,然后把它换成一个

如果一方或双方有一个空的价值,然后删除Request.Header它不像正常的消息的一部分添加完成。

如果这是一个委托MultipartProvider,那么它的全部内容作为标题的部分。多部分代表不能假设Request.Header包含有关自己的任何字段。提供者可以确定这是一个多部分委托是否通过检查MyDelegator是一个MultipartProvider这个测试,尽管不太可能是必要的。

MATLAB读取这个属性只在从调用提供者的回报完整的方法。修改这个数组一旦MATLAB调用将被忽略开始

类作者应该意识到他们的子类可能添加字段(在他们完整的方法)之前调用完整的超类。最好保护等领域,而不是添加字段具有相同的名称。然而,将一个参数添加到字段是允许的。例如,一个超类可以将一个字符集参数添加到现有的内容类型字段不已经有一个了。

属性:

GetAccess
公共
SetAccess
公共

表明是否强迫分块传输编码,指定为布尔。这个属性是作者感兴趣的子类,只适用于供应商,不是多部分代表。子类集ForceChunked控制内容是否应该发送使用分块传输编码。如果(默认),MATLAB决定是否发送内容分块,根据内容长度是否知道消息是准备发送时:

  • 如果MATLAB知道内容长度(如果消息包含内容长度字段,或者如果这个提供者的expectedContentLengthMATLAB方法返回一个数字),然后决定是否寄分块。

  • 如果MATLAB不知道内容长度(没有在标题和内容长度字段expectedContentLength返回空的),然后用MATLAB总是分块发送的消息。

如果ForceChunked真正的MATLAB发送消息,然后分块不管它知道内容的长度,除非已知的长度小于块大小。如果此属性真正的,那么消息必须不包含内容长度字段,因为HTTP不允许分块消息内容长度字段。然而,你仍然可以返回一个非零值expectedContentLength方法如果你希望MATLAB验证返回预期的数据长度。

当MATLAB选择发送消息分块,每个块的大小等于返回的数据的长度getData

MATLAB调用后读取该值完整的方法,在调用之前开始。它没有设置这个字段。

属性:

GetAccess
公共
SetAccess
公共

请求消息发送,指定为一个matlab.net.http.RequestMessage对象。

作者使用这个属性只有通过子类。的RequestMessage.sendRequestMessage.complete设置该属性的方法RequestMessage在谁的身体这个供应商已经放置,在这个提供程序调用其他方法之前,在添加任何额外的头字段或验证消息。提供者可以检查这个消息,看看原始请求中包含的是什么。

代表们看到这个属性相同的值作为全权代表。内容提供者应该意识到,如果他们的代表,他们不一定是提供整个身体的请求消息,所以他们不应该假设在这个请求头字段相关的数据提供。通常,代表应该忽略这个请求头字段相关的数据,如内容类型。

如果提供者希望添加任何消息头字段,或者修改现有的,它应该这样做的完整的通过将这些字段添加到方法财产。调用者的完整的(RequestMessage或授权提供者)决定如何处理这些字段。RequestMessage.sendRequestMessage.complete总是将这些字段复制到RequestMessage。授权提供者可以复制自己的字段房地产或将它们插入到消息(如的情况MultipartProvider)。有关更多信息,请参见财产。

这个属性是只读的。

属性:

GetAccess 公共
SetAccess matlab.net.http.RequestMessage

受保护的属性

内容提供者这个供应商是委托,作为指定matlab.net.http.io.ContentProvider对象。这个属性被设置在调用提供者(在委托)delegateTo方法来表示当前授权提供者。如果没有当前代表团,值是空的。

完整的方法将此属性设置为空。

属性:

GetAccess
受保护的
SetAccess
受保护的

内容提供者委托给这个供应商,指定为一个matlab.net.http.io.ContentProvider对象。

如果一个内容提供者代表负责发送消息的全部或部分数据到另一个提供者,然后这个属性标识授权提供者委托。例如,一个MultipartProvider代表的部分消息到其他供应商,所以在每个委托它插入一个句柄。否则,MyDelegator是空的。的delegateTo方法设置这个属性的委托。

属性:

GetAccess
受保护的
SetAccess
受保护的

方法

全部展开

更多关于

全部展开

版本历史

介绍了R2018a