ODATA ATOMPUB格式:应用程序/XML与应用程序/ZIP
题
在查看一些ODATA提要的响应时,我发现它们的结构略有不同,具体取决于它们的内容类型设置为应用程序/XML或应用程序/ZIP。这里有两个例子:
- 应用程序/邮政编码
<content type="application/zip" /> <m:properties> <d:Id>Simple.Data.Core</d:Id> </m:properties
- 应用程序/XML
<content type="application/xml"> <m:properties> <d:ProductID m:type="Edm.Int32">1</d:ProductID> </m:properties> </content>
它们俩都以Atompub(odata使用的Stanard RSS架构)发送,但是如果内容具有类型为“应用程序/zip”,M:属性元素与内容相同,并且如果是“应用程序/xml”,它是“内容”的子元素。根据ODATA.org的ODATA规范,第二种格式是正确的。有谁知道为什么还使用了第一种格式(甚至是ODATA客户理解)?
提前致谢
解决方案
实际上两者都是正确的。根据Atompub规范,第一个(内容之外的M:属性)代表媒体链接条目(MLE)。此处描述了MLE的ODATA格式: http://www.odata.org/developers/protocols/atom-format#representingmedialinkentries。第二个是普通的非MLE实体。
其他提示
我收到以下答案 ODATA Google Group:
如果将实体类型标记为媒体链接条目,即它是由媒体支持的,则其属性不存在于Atom:输入元素的元素中。内容元素指向位置,以下载从中下载备用媒体。这种实体的另一个例子是Netflix的提要中的“标题”集合。http://odata.netflix.com/v2/catalog/titles?$ top = 1您在下面提到的是您在原子中解析此类实体类型时遇到了麻烦,您如何解析原子饲料?您是在使用我们的客户库之一,还是手工解析响应?
参考 :http://tools.ietf.org/html/rfc5023#page-25
Phani Raj Yayavaram Narasimha
不隶属于 StackOverflow