主要内容

matlab.net.http.io.ImageProvider类

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

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

描述

使用一个ImageProvider对象转换并发送到MATLAB®HTTP中的图像数据RequestMessage。此提供程序将数据转换为此对象中请求的内容类型或属性指定的标准类型之一。此提供程序还将图像文件转换为其他格式。

默认情况下,如果在中指定图像内容类型RequestMessage例如,“图像/jpeg”请求消息体是一个消息体包含图像数据,然后MATLAB假设MessageBody.Data是图像数据,并尝试对其进行适当转换。要控制数据的转换方式,请使用ImageProvider在里面请求消息体

如果RequestMessage如果不包含Content-Type报头字段,则此提供程序将适当的图像Content-Type添加到报头。否则,即使报头字段的值与Content-Type字段不一致,也不会修改报头字段并按照该对象属性中指定的方式进行转换。

matlab.net.http.io.ImageProvider班级是一个手柄类。

创建

描述

提供者=图像提供者(数据__arg1、…,argN创建一个转换MATLAB图像的提供者数据设置为指定的格式__arg1、…,argN,设置资料财产数据论据财产__arg1、…,argN

提供者=图像提供者(文件名__arg1、…,argN从文件中获取图像数据文件名并以中指定的格式发送__arg1、…,argN或Content-Type字段,设置文件名财产文件名

虽然这个提供程序可以将一种格式的文件转换为另一种格式的数据,但它并不是按原样发送图像文件的。若要发送文件而不改变其类型,请使用文件提供者

性质

全部展开

公共属性

这是指定为构造函数(如果有)的数据参数的值,或者是从文件名参数。在发送包含此提供程序的消息之前,请将此值设置为字符串标量或字符向量。

如果子类作者希望在MATLAB调用开始方法,然后在完成方法。如果更改此属性,则更改将在下一次调用时生效开始

属性:

获取访问权限
公众的
SetAccess
公众的

imwrite函数,指定为单元格数组。这是指定给构造函数的值,该构造函数包含的参数列表如imwrite,但忽略图像数据和文件名参数。

子类作者可以在MATLAB调用之前设置这个属性开始,例如完成. 如果更改这些值,则这些更改在下次调用之前不会生效开始

属性:

获取访问权限
公众的
SetAccess
公众的
依赖的
真的

包含图像数据的文件名,指定为字符串。这是指定为文件名构造函数的参数(如果有)。它是只读的。

格式文件名派生自文件名扩展名,该扩展名可能与fmt论点__arg1、…,argN或消息中的内容类型。此构造函数语法允许您将一种格式的图像文件发送到需要另一种格式的服务器。但是,有些转换是不兼容的。例如,无法将RGB文件(如JPEG)转换为GIF格式。

属性:

获取访问权限
公众的
SetAccess
私人

消息或部分的标题字段,指定为一个或多个消息的向量matlab.net.http.HeaderField物体。

此属性仅供子类作者使用。MATLAB在调用提供程序之前设置这个属性完成对于非多部分消息,MATLAB将此属性初始化为请求.标题-任何matlab.net.http.field.GenericFields或空值字段。这个内容提供者使用此属性添加描述要发送的数据的标题字段,或向消息中已有的标题字段添加参数。在MultipartProvider,MATLAB将此属性初始化为委派提供程序打算为零件插入的标题字段。委派可以修改或更改这些字段。

从提供商的完成方法,如果这不是一条多部分消息,则MATLAB读取该属性并将其内容合并到要求.本文件中的字段具有名字还没有出现的请求.标题添加到的末尾请求.标题.如果这是一个字段有一个的名字这和我的一个一样请求.标题,两者都有非空的价值观,那么:

  • 如果那个人请求.标题是一个通用字段,然后忽略其中一个

  • 如果那个人请求.标题不是一个通用字段,然后将其替换为中的一个

如果其中一个或两个具有空价值观,则删除该字段请求.标题而且它不是作为正常消息完成的一部分添加的。

如果这是一个MultipartProvider,那么这本书的全部内容用作零件的标题。多部分委托不得假定请求.标题包含与自己相关的任何字段。提供程序可以通过检查MyDelegator是一个MultipartProvider,但不太可能需要进行此测试。

MATLAB只在调用提供程序返回时读取此属性完成一旦MATLAB调用,对该数组的更改将被忽略开始

类作者应该意识到,他们的子类可能已经在其中添加了字段(在他们的完成方法)之前调用完成在他们的超类中。最好保留这些字段,而不要添加同名字段。但是,允许向字段添加参数。例如,一个超类可以将一个字符集参数添加到一个现有的内容类型字段中,而该字段还没有。

属性:

获取访问权限
公众的
SetAccess
公众的

指示是否强制分块传输编码,指定为布尔值。此属性仅对子类作者感兴趣,并且仅适用于不是多部分委托的提供程序。已设置子类强制块控制是否应使用分块传输编码发送内容。如果假的(默认),MATLAB根据是否知道消息准备发送时的内容长度来决定是否发送分块的内容:

  • 如果MATLAB知道内容长度(如果消息包含content - length字段,或者如果这个提供者的预期内容长度方法返回一个数字),然后MATLAB决定是否将其分块发送。

  • 如果MATLAB不知道内容长度(标头和预期内容长度返回空),然后MATLAB总是发送分块的消息。

如果强制块真的,则不管是否知道内容长度,MATLAB都将消息分块发送,除非已知长度小于块大小。如果这个属性是真的,则消息不能包含内容长度字段,因为HTTP不允许分块消息包含内容长度字段。但是,您仍然可以在预期内容长度方法,如果您希望MATLAB验证您返回的是预期的数据长度。

当MATLAB选择发送分块的消息时,每个分块的大小等于获取数据

MATLAB在调用完成方法,然后再调用开始。它不设置此字段。

属性:

获取访问权限
公众的
SetAccess
公众的

要发送的请求消息,指定为matlab.net.http.RequestMessage反对。

此属性仅供子类作者使用。的RequestMessage.sendRequestMessage.complete方法将此属性设置为RequestMessage在谁的身体在调用该提供程序中的任何其他方法之前,以及在添加任何额外的报头字段或验证消息之前,已经放置了该提供程序。提供者可以检查此消息,以查看原始请求中包含的内容。

委托会看到与委托相同的属性值。数据共享应该知道,如果他们是委托,他们不一定提供请求消息的整个主体,因此他们不应该假设此请求中的头字段与他们提供的数据相关。通常,代理应该忽略此请求中与数据相关的头字段,例如内容类型。

如果提供程序希望在此消息中添加任何报头字段,或者修改现有的报头字段,它应该在其完成方法,将这些字段添加到财产。调用者的完成RequestMessage或委托提供程序)决定如何处理这些字段。RequestMessage.sendRequestMessage.complete总是将这些字段复制到RequestMessage.委托提供程序可以将字段复制到自己的属性或将其插入消息中(如MultipartProvider)。有关详细信息,请参阅财产。

此属性是只读的。

属性:

获取访问权限 公众的
SetAccess matlab.net.http.RequestMessage

受保护财产

内容提供者该提供程序委托给的对象,指定为matlab.net.http.io.ContentProvider对象。此属性由delegateTo方法指示当前委派的提供程序。如果当前没有委派,则该值为空。

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

属性:

获取访问权限
受保护的
SetAccess
受保护的

内容提供者委托给此提供程序的,指定为matlab.net.http.io.ContentProvider反对。

如果一个内容提供者委托将消息数据的全部或部分发送给另一个提供程序的责任,然后此属性标识委托给该委托的提供程序。例如MultipartProvider将消息的一部分委托给其他提供程序,因此它在每个委托中插入自己的句柄。否则,MyDelegator是空的delegateTo方法在委托中设置此属性。

属性:

获取访问权限
受保护的
SetAccess
受保护的

方法

全部展开

更多关于

全部展开

介绍了R2018a