Pregunta

El Especificación OData es largo.Incluso el "OData Core"el documento es bastante largo.

Así que, ¿qué tal un condensado resumen de lo que sólo lectura de OData editor necesita aplicar a un mínimo?

¿Fue útil?

Solución

Voy a empezar.Un servicio OData proporciona un extremo HTTP que:

  • DEBE entender "Accept"los encabezados
  • DEBE apoyar el encabezado de Tipo de Contenido, y DEBE ser compatible con formato de ATOM (opcionalmente JSON)
  • PUEDE devolver un documento de servicio (lista de colecciones) para GET / (10.1.1)
    • Si un ÁTOMO (AtomPub?) el formato, la jerarquía es service/workspace/collection/title
  • DEBE devolver las descripciones de las colecciones a las solicitudes como las GET /Customers (10.2)
    • Si un ÁTOMO, la jerarquía es feed/entry/content
  • DEBE devolver las descripciones de las entidades a las solicitudes como las GET /Customers(3) (10.2.1)
  • PUEDE devolver las propiedades individuales de las entidades individuales de las solicitudes como las GET /Customers(3)/Name (10.2.2)
  • DEBE poner a su disposición un CSDL esquema de descripción envuelto en un EDMX documento (10.1.2)
    • Esto DEBERÍA estar disponible en /$metadata
  • PUEDE apoyar cualquiera de estas consultas (10.2.3)
    • Filtros (límite de filas devueltas): Products?$filter=Price lt 10.00
    • Seleccione (límite de los campos devueltos): Products?$select=Rating,ReleaseDate
    • Pedido por: Products?$orderby=ReleaseDate asc, Rating desc
    • La parte superior, skip: Products?$top=5&$skip=2
    • InlineCount (incluir una entidad count): Products?$inlinecount=allpages
  • DEBE (?) proporcionar una lista de las relaciones de una entidad (10.2.4): Products(0)/$links/Orders
  • DEBE proporcionar una entidad count (10.2.5): Products/$count
  • PUEDE apoyar a otros formatos con $format el especificador (10.2.3.7)

Cuando un ÁTOMO de alimentación se devuelve (como para una colección), es necesario para adaptarse a algunos de OData convenciones: http://www.odata.org/documentation/odata-v3-documentation/atom-format/ Por ejemplo:

  • Tipos que se utilizan son "edm:String"etc.
  • link los elementos utilizados en generosamente
  • content los elementos que contienen el contenido en línea (por ejemplo, datos de texto), o un enlace a ella (por ejemplo, imágenes, archivos binarios) con src= atributo.

Cuando una fuente de JSON es devuelto, se sigue de forma similar ciertas reglas:

Las direcciones url se anima a seguir este esquema:

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