ABES/Objects

Bedienungsanleitungen, Dokumentationen, Lern-Videos

05 Abfrage von Metatdaten

aoRestServer/ODATA für ABES/Objects - Hinweise für Frontend-Entwickler

  1. Abfrage des Metadaten-Dokuments
  2. Abfrage des Service-Dokuments
  3. Metadaten-Umfang in Responses

1. Abfrage des Metadaten-Dokuments

Das Metadaten-Dokument wird zurückgegeben, wenn ein Http-Get-Request gemäß nachfolgendem Beispiel gesendet wird.
Dieses Dokument kann lt. OData-Protokoll ausschließlich im XML-Format zurückgegeben werden.

 

Request

GET

http://test.server.de/odata/$metadata

 

Das zurückgegebene XML-Dokument beschreibt ausführlich alle im ABES/Objects-Schema vorkommenden Tabellen (Entitäten) inklusive jeglicher Tabellenfelder (einfache Felder, genannt “Property” sowie Assoziationen und Kollektionen, genannt “NavigationProperty”).

Zusätzlich zu den Tabellen/Feldern werden alle benutzerdefinierten Funktionen beschrieben, die von der ABES/Objects-OData-Schnittstelle zur Verfügung gestellt werden.
Der Umfang dieser Funktionen wird im Laufe der Zeit erweitert und dem Bedarf der Frontend-Entwicklungen angepasst werden.

2. Abfrage des Service-Dokuments

Für einen schnellen Überblick kann das Service-Dokument abgefragt werden. Dieses Dokument wird nur im JSON-Format zurückgegeben.
Hier ein Beispielrequest:

Request

GET

http://test.server.de/odata

 

Dieses JSON-Objekt enthält ebenfalls die Beschreibung aller Entitäten und Funktionen, allerdings nur in verkürzter Form (ohne Feldbeschreibungen und ohne Funktionsparameter-Beschreibungen).

 

Response

{

  “value”: [

    {

      “name”: “AbbruchGrund”,

      “kind”: “EntitySet”,

      “url”: “AbbruchGrund”

    },

    {

      “name”: “Ablage”,

      “kind”: “EntitySet”,

      “url”: “Ablage”

    },

    {

      “name”: “Zielvereinbarung”,

      “kind”: “EntitySet”,

      “url”: “Zielvereinbarung”

    },

    {

      “name”: “ServerLogin”,

      “kind”: “FunctionImport”,

      “url”: “ServerLogin”

    },

    {

      “name”: “ServerLogout”,

      “kind”: “FunctionImport”,

      “url”: “ServerLogout”

    },

    {

      “name”: “GetRoles”,

      “kind”: “FunctionImport”,

      “url”: “GetRoles”

    }

  ]

}

3. Metadaten-Umfang in Responses

Mittels Request-Header “Accept” kann festgelegt werden, in welchem Umfang Metadaten-Annotationen in die zurückgegebenen JSON-Objekte aufgenommen werden soll.
Dazu ist der Accept-Parameter “odata.metatdata” zu setzen.

Beispiel:

Accept: application/json,application/xml;odata.metadata=full

Als mögliche Werte kann none, minimal oder full eingestellt werden.

Der Default lautet minimal.

Die folgenden Metadata-Annotationen werden von der ABES/Objects-OData-Schnittstelle unterstützt:

  • @odata.contetxt
  • @odata.count
  • @odata.nextLink
  • @odata.editLink
  • @odata.id
  • @odata.type

Die verschiedenen Annotationen werden entsprechend des angeforderten Levels generiert.
Beim Level none wird nur @odata.count und/oder @odata.nextLink ausgegeben, wenn die jeweiligen Voraussetzungen vorhanden sind.

Weitere Informationen zu den Metadata-Annotationen befinden sich in der Dokumentation des OData-Standards, insbesondere in “OData JSON Format 4.0”.

Die Bildschirmfotos können in aktuellen Programmversionen visuell abweichen.

Sie haben Fragen oder Anregungen? Schreiben Sie uns gerne an support@rackow-software.de