Pregunta

Mientras miraba las respuestas de algunos alimentos Odata, vi que sus estructuras son ligeramente diferentes dependiendo de si tienen el tipo de contenido configurado en Application/XML o Application/Zip. Aquí hay dos ejemplos:

  1. aplicación/zip
<content type="application/zip" /> 
<m:properties>
  <d:Id>Simple.Data.Core</d:Id> 
</m:properties
  1. Aplicación/XML
<content type="application/xml">
<m:properties>
  <d:ProductID m:type="Edm.Int32">1</d:ProductID>
</m:properties>
</content>

Ambos se envían como Atompub (esquema Stanard RSS utilizado por ODATA), pero en caso de que el contenido tenga un tipo "Aplicación/Zip", M: El elemento de propiedades viene al mismo nivel que el contenido, y si es "Aplicación/XML", Viene como un subelemento de "contenido". Según la especificación ODATA en Odata.org, el segundo formato es correcto. ¿Alguien sabe por qué también se usa el primer formato (e incluso los clientes de ODATA lo entienden)?

Gracias por adelantado

¿Fue útil?

Solución

En realidad, ambos son correctos. El primero (con las propiedades m: fuera del contenido) representa una entrada de enlace de medios (MLE) según la especificación de Atompub. El formato Odata para MLE se describe aquí: http://www.odata.org/developers/protocols/atom-format#representingmedialinkentries. El segundo es una entidad normal no mle.

Otros consejos

He recibido la siguiente respuesta en Odata Google Group:

Si un tipo de entidad está marcado como una entrada de enlace de medios, es decir, está respaldado por los medios, sus propiedades no están presentes en el elemento del elemento Atom: Entrada. Y el elemento de contenido apunta a la ubicación para descargar los medios de seguridad. Otro ejemplo de tal entidad es la colección de 'títulos' en el feed de Netflix.http://odata.netflix.com/v2/catalog/titles? $ top = 1 mencionas a continuación que tienes problemas para analizar tales tipos de entidad en Atom, ¿cómo estás analizando la alimentación del átomo? ¿Está utilizando una de nuestras bibliotecas de clientes o está analizando la respuesta a mano?

Referencia :http://tools.ietf.org/html/rfc5023#page-25

Phani Raj Yayavaram Narasimha

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top