HTTP数据类型转换
MATLAB®HTTP接口自动转换数据类型用于HTTP消息与MATLAB类型。
在请求消息转换数据
当发送消息有效负载,分配你的MATLAB数据数据
属性在一个MessageBody
对象,然后把它作为一个身体
属性在一个RequestMessage
对象。MATLAB数据的类型取决于HTTP消息的内容类型。如果你不指定一个内容类型,然后MATLAB假设内容类型值,所述内容类型未指定。
此表显示了MATLAB的皈依者数据
请求消息的有效负载基于类型/子类型属性和指定的字符集属性content - type报头字段。星号字符(*
)是指任何子类型。
内容类型 |
MATLAB输入 |
---|---|
application / json |
如果你已经有json编码的文本,然后指定的文本 如果没有指定字符集属性,那么默认的字符集值 |
|
如果 如果 如果你不指定一个字符集,默认取决于亚型。对于下面的子类型,默认
对于所有其他亚型,MATLAB决定了字符集。如果所有中ASCII字符,那么字符集 请注意 服务器可能不正确解读文本类型编码 |
图像/ * |
控制你的图像数据的转换或覆盖的类型转换基于子类型,指定额外的参数 例如,下面的代码转换 身体= MessageBody ({imageData,“jpg”,“质量”,50});要求= RequestMessage (“把”ContentTypeField (“图像/ jpeg”),身体);resp = req.send (url); |
|
如果 如果 |
|
如果 |
音频/ * |
MATLAB支万博1manbetx持以下音频类型:
|
|
为 对于其他类型,MATLAB的皈依者 指定额外的参数名称-值对 |
内容类型未指定
如果你不指定一个请求消息中的内容类型字段,MATLAB分配类型、子类型和字符集的类型数据
财产。这种假定行为可能不会导致预期的内容类型,或可能无法确定类型,所以,等待最好的结果,指定内容类型。下表描述了假设内容类型的基础上数据
。未列出的类型可能会处理,但未上市的行为类型是不能保证在未来的版本中保持不变。
|
生成的内容类型 |
---|---|
字符串 |
文本/平原 |
表 |
文本/ csv |
细胞向量的第一个元素是一个表 |
|
org.w3c.dom.Document |
应用程序/ xml |
uint8 向量 |
发送一个 发送字符的数据没有转换,使用 |
如果不是一个类型中列出的表,然后用MATLAB决定是否以下基于字符类型之一:
文本/ *
任何类型和字符集
javascript应用程序/ *
应用程序/ vnd.wolfram.mathematica.package
MATLAB将这些类型转换为字符串,如果指定,或者使用字符集us - ascii
为文本/平原
应用程序类型,utf - 8,和其他类型的默认编码MATLAB。
将响应消息中的数据
当收到一条消息,该消息带有一个有效载荷,MATLAB将传入的字节流(MessageBody.Data
财产)一个合适的MATLAB类型。
下表列出了MATLAB在响应消息中识别的内容类型,基础类型/子类型属性和收到的字符集属性内容类型字段。只有在MATLAB转换数据HTTPOptions.ConvertResponse
房地产是真的,这是缺省设置。在表中,星号字符(*
)是指任何字符。
响应消息内容类型 | MATLAB输入MessageBody.Data 财产 |
---|---|
application / json |
|
图像/ * |
支持类型的图像数万博1manbetx据,请参阅万博1manbetx支持图像数据子类型。如果亚型不在这个列表中,然后传递给子类型 |
音频/ * |
|
|
|
电子表格应用程序/ * * |
|
text / xml 应用程序/ xml |
如果Java是可用的, 如果Java不可用, |
如果不是一个类型中列出的表,然后用MATLAB决定是否以下基于字符类型之一:
文本/ *
任何类型和字符集
javascript应用程序/ *
应用程序/ vnd.wolfram.mathematica.package
MATLAB将这些类型转换为字符串,如果指定,或者使用字符集us - ascii
为文本/平原
应用程序类型,utf - 8,和其他类型的默认编码MATLAB。
如果MATLAB不支持的类型,或者万博1manbetxHTTPOptions.ConvertResponse
属性设置为假
,那么:
如果类型是基于字符,那么
数据
包含负载转换为字符串。否则,
数据
包含原始uint8
向量。
如果输入数据转换是尝试但失败(例如,“图像/ jpeg”
数据是无效的JPEG数据),那么历史
财产的textbox
抛出的RequestMessage.send
方法包含ResponseMessage
与有效载荷
属性设置为uint8
有效载荷,如果类型是基于字符,那么数据
设置为有效载荷转换为一个字符串。
万博1manbetx支持图像数据子类型
下面的子类型是支持的万博1manbetximwrite
函数作为指定的格式。例如,理由亚型的格式骨形态发生蛋白
是bmp的
。的imread
功能转换与指定的子类型的数据格式。
子类型 |
所使用的格式 |
---|---|
|
bmp的 |
|
“gif” |
|
“jpeg” |
|
“jp2” |
|
“jpx” |
|
“png” |
|
“饮” |
|
“hdf” |
|
“pbm” |
|
图形文件的 |
|
“pgm” |
|
“pnm” |
|
ppm的 |
|
“拉” |
|
“使用xwd” |
另请参阅
MessageBody
|RequestMessage
|ResponseMessage
|ContentTypeField
|textbox
|HTTPOptions
|imwrite
|imread
|audiowrite
|audioread
|jsonencode
|jsondecode
|xmlwrite
|xmlread