Dieses Topic beschreibt den Aktionsblock-Kontext eines REST-API-Endpunkts: deklarierte Variablen, Rückgabewert und Antworttyp sowie endpunktspezifische Aspekte des anonymen Zugriffs. Eine Übersicht über die REST API-Konfiguration finden Sie unter REST API.
Deklarierte Variablen (Baumansicht)
Die Baumansicht links neben dem Aktionsblock spiegelt im oberen Bereich ausgewählte Merkmale der Datenstruktur für die Endpunkt-Definition wider.
Als letztes Element der obersten Hierarchieebene erscheint der Knoten Deklarierte Variablen. Dieser listet alle Variablen für den Aktionsblock samt Typhinweis auf.
Die folgenden Variablen sind systemseitig deklariert. Sie greifen darauf im Aktionsblock über den Variable-Wertauflöser zu.
HINWEIS Enthält der Knoten weitere deklarierte Variablen, stammen diese aus Konfigurationen im Aktionsblock oder aus der URI-Definition des Endpunkts (siehe REST API: URI und URI-Parameter).
TIPP Die Baumansicht aktualisiert sich während der Konfiguration teilweise erst, sobald Sie den Baum berühren. Geänderte URI-Parameter erscheinen dagegen sofort nach dem Verlassen des Felds.
Variablenname | Typ | Beschreibung | Richtung |
|---|---|---|---|
|
| Alle Request-Header als Map, die | Eingehend |
|
| Alle Query-Parameter aus der URL als Map, die | Eingehend |
|
| Datenobjekt für den Rückgabewert. | Ausgehend |
|
| HTTP-Response-Statuscode für die Antwort. Standard bei Erfolg: | Ausgehend |
|
| Benutzerspezifische Response-Header als Map, die | Ausgehend |
|
| Steuert die Behandlung eines | Ausgehend |
|
| Nur relevant, wenn | Ausgehend |
Rückgabewert und Antworttyp
Den regulären Rückgabewert eines Endpunkts definieren Sie im Aktionsblock durch eine Zuweisung an die Variable response.
Die Serialisierung dieses Datenobjekts, also den Antworttyp, bestimmt im Standardfall der Accept-Header der Anfrage.
AUSNAHME Weisen Sie der Variable response ein Objekt vom Typ Inhalt (Content) zu, findet keine automatische Serialisierung statt. Stattdessen liefert die Plattform die Nutzlast des Content-Objekts zurück. So geben Sie zum Beispiel über Dateireferenz eine beliebig große Datenmenge zurück. Den Content-Type-Header übernimmt die Plattform aus dem Feld mediaType des Content-Objekts.
HINWEIS Diese besondere Behandlung des Typs Inhalt setzen Sie außer Kraft, indem Sie der Variable disableContentHandling im Aktionsblock den Wert true zuweisen (siehe Tabelle oben).
Anonymer vs. autorisierter Zugriff
Für jeden Endpunkt entscheiden Sie über die Option Anonymer Zugriff (allowAnonymousAccess) einzeln, ob ein Zugriff ohne Autorisierung möglich ist.
Die allgemeinen Regeln und das Verhalten der Plattform bei anonymen und authentifizierten Zugriffen beschreibt Zugriffskontrolle für APIs. Dieser Abschnitt ergänzt nur die endpunktspezifischen Aspekte.
Prüfen Sie Sicherheitsaspekte der über den Aktionsblock bereitgestellten Funktionalität, bevor Sie einen Endpunkt für anonymen Zugriff freigeben.
Den fehlenden Sitzungskontext (Rolle der Session, Firma der Session, Benutzer der Session) gleichen Sie bei Bedarf über die Ausführen als-Ereignisaktion aus.
Zum Ausführen einer Suche (Ereignisaktion) benötigen Sie eine Rolle der Session mit Leserechten für die gesuchten Entitätstypen.
ACHTUNG Eine Suche (Ereignisaktion) mit einer Rolle der Session ohne Besitzereinschränkungen, etwa eine „Super User"-Rolle, ist ein Sicherheitsrisiko. Damit könnte der anonyme Endpunkt Lesezugriff auf sensible Daten ohne Zugriffskontrolle ermöglichen.
WICHTIG
Greifen Sie über denselben Browser auf einen Endpunkt zu, in dem bereits eine Lobster Data Platform-Sitzung läuft, greift automatisch das Session Cookie. Damit übernimmt der Aufruf den bestehenden Sitzungskontext. Für echte anonyme Tests verwenden Sie ein privates Browser-Fenster oder einen vom angemeldeten Browser unabhängigen REST-Client.
Ansonsten authentifizieren Sie sich über OAuth2 für API Zugriffe.