主要内容

matlab.net.http.io.FileProvider类

包裹:matlab.net.http.io.
超类:matlab.net.http.io.contentProvider.ContentProvider.matlab.mixin.copeable.

contentprovider发送文件

描述

使用一个FileProvider对象作为向服务器发送一个或多个文件的便捷方式。

matlab.net.http.io.FileProvider类是一个处理班级。

创造

描述

Providers = FileProvider(文件构造一个数组FileProviders,每个文件中的一个文件数组中。每个条目向服务器发送一个文件。

要在到达文件末尾之前终止文件传输,请设置文件大小属性设置为所需的字节数。要根据正在读取的文件内容来决定在哪里结束传输,可以编写一个子类并重写getData检查正在读取的数据并设置stop返回值以结束传输。

Providers = FileProvider(文件许可machineformat.编码指定打开文件的选项。

Providers = FileProvider(fileids.构造FileProviders由文件标识符指定。从当前文件位置指示符开始读取文件到文件的末尾。传输完成后,文件标识符不会关闭。如果文件已打开,或者希望只需转移文件的尾随部分,则此方法非常有用。为此,请打开文件,将文件位置指示器设置为要传输的文件中的数据的开始,然后将该文件标识符传递给此构造函数。你也可以设置文件大小要限制字节总数或写子类以控制何时结束传输。

输入参数

全部展开

一个或多个文件名,指定为字符串、字符串数组、字符向量或字符向量的单元格数组。有关文件名使用的更多信息,请参见富豪

数据类型:字符|字符串

文件访问类型,指定为字符串。如果许可,则必须允许写访问。默认值为'w +',它打开或创建文件以读取和写入并丢弃现有内容(如果有的话)。

数据类型:字符|字符串

对象允许的任何值指定的读或写字节或位的顺序富豪函数。

数据类型:字符|字符串

属性允许的任何值指定为字符编码富豪函数。

数据类型:字符|字符串

一个或多个文件标识符,指定为双重或一系列双重。

属性

全部展开

公共属性

文件的完整路径,由输入参数派生,指定为字符串。

属性:

GetAccess
公众
setaccess.
公众
依赖
真实

传输的字节数,指定为双倍。

属性:

GetAccess
公众
setaccess.
公众

请求消息要发送,指定为amatlab.net.http.requestmessage.对象。

此属性仅由子类作者使用。当RequestMessage.send.send.RequestMessage.complete.方法将此属性设置为要求询问身体在调用此提供程序中的任何其他方法之前,并在添加任何其他标题字段之前,已放置此提供程序,或在添加任何其他标题字段之前。提供商可以检查此消息以查看原始请求中包含的内容。

委托将此属性与委托卡相同。内容提供者应该意识到,如果它们是委托,它们不一定提供请求消息的整个主体,所以它们不应该假设这个请求中的报头字段与它们提供的数据相关。通常,委托应该忽略请求中与数据相关的报头字段,例如Content-Type。

如果提供商希望将任何标题字段添加到此消息,或修改现有的字段,则它应该在其上进行完整的通过将这些字段添加到的方法标题财产。来电者的来电者完整的要求询问或者委派提供商)确定与这些字段有关。RequestMessage.send.send.RequestMessage.complete.始终将这些字段复制到标题要求询问.委派提供商可以将字段复制到自己的字段标题属性或将它们插入消息(如下)MultiPartProvider.).有关更多信息,请参见标题财产。

此属性是只读的。

属性:

GetAccess 公众
setaccess. matlab.net.http.requestmessage.

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

此属性仅供子类作者使用。MATLAB®在调用提供程序之前设置此属性完整的方法。对于非多部分消息,MATLAB将此属性初始化为请求。标题,减去任何matlab.net.http.field.genericFields.或empty-valued字段。当内容提供者使用此属性可添加描述要发送的数据的报头字段,或向消息中已经存在的报头字段添加参数。的委托中MultiPartProvider.,MATLAB将此属性初始化为标题字段,即委派提供商打算插入该部件。委派可以修改或更改这些字段。

从提供商返回后完整的方法,如果这不是一个多级消息,那么Matlab读取此属性并将其内容合并到标题中请求.这个领域标题的名字尚未出现在请求。标题添加到结尾请求。标题.如果是一个领域标题有一个名称这和1 in是一样的请求。标题,两者都是非空的然后:

  • 如果是其中请求。标题是一个GenericField然后忽略一个人标题

  • 如果是其中请求。标题不是A.GenericField,然后把它替换成里面的那个标题

如果其中一个或两个有空价值,然后将该字段从中删除请求。标题它不会作为正常消息完成的一部分添加。

如果这是a的委托MultiPartProvider.,然后是这个的全部内容标题用作部分的标题。多部分代表不能假设请求。标题包含与自己有关的任何字段标题.提供者可以通过检查是否是一种多级委托MyDelegator.是一个MultiPartProvider.,尽管不太可能需要这种测试。

MATLAB仅读取此属性仅拨打电话提供商完整的方法。一旦MATLAB调用,忽略对此数组的更改开始

类作者应该意识到他们的子类可能会为此添加字段标题(在他们完整的方法)在呼叫之前完整的在他们的超级类中。最好保留这些字段,而不是添加具有相同名称的字段。但是,允许对字段添加参数。例如,超类可以将Charset参数添加到尚未拥有一个的现有内容类型字段。

属性:

GetAccess
公众
setaccess.
公众

指示是否强制分块传输编码,指定为布尔值。此属性仅对子类作者感兴趣,且仅适用于非多部分委托的提供程序。子类集ForceChunked控制是否应使用Chunked Transfer编码发送内容。如果(默认),MATLAB决定是否将内容发送,基于它是否知道在准备好消息时的内容长度:

  • 如果MATLAB知道内容长度(如果消息包含内容长度字段,则是这种情况,或者如果此提供程序expectedContentLength方法返回一个数字),然后MATLAB决定是否将其分块发送。

  • 如果MATLAB不知道内容长度(没有content - length字段在头部和expectedContentLength返回空),然后matlab始终发送邮件块。

如果ForceChunked真实然后,Matlab发送消息块,无论它是否知道内容长度,否则都是已知的长度小于块大小。如果这个属性是真实,则消息必须不包含Content-Length字段,因为HTTP不允许分块消息具有Content-Length字段。属性中仍然可以返回非零值expectedContentLength方法如果希望MATLAB验证您是否返回预期的数据长度。

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

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

属性:

GetAccess
公众
setaccess.
公众

受保护的属性

内容提供者该提供商正在委派,指定为amatlab.net.http.io.contentProvider.ContentProvider.对象。属性在调用提供程序(委托程序)中设置此属性德比托方法以指示当前的委托提供程序。如果当前没有委托,则该值为空。

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

属性:

GetAccess
保护
setaccess.
保护

内容提供者委托给该提供者的,指定为matlab.net.http.io.contentProvider.ContentProvider.对象。

如果A.内容提供者委派责任将所有或一部分消息数据发送到另一个提供程序,然后此属性将委派提供程序标识到委托。例如,一个MultiPartProvider.将部分消息委托给其他提供程序,因此它将句柄插入每个委托。否则,MyDelegator.是空的。当德比托方法在委托中设置此属性。

属性:

GetAccess
保护
setaccess.
保护

方法

全部展开

更多关于

全部展开

在R2018A介绍