Web-Schnittstellen MOD009CRT Neu ab DB 39.5.10

arrowbright Einstieg

info Informationen

  • In diesem Modul werden Web-Schnittstellen angelegt und konfiguriert.
  • Eine Web-Schnittstelle definiert den Endpunkt, an dem mit PLANTA interagiert werden kann.
  • Pro Methode (GET, PUT, POST, DELETE) kann eine Implementation und Web-Entität hinterlegt werden.
    • Die Implementation gibt vor, wie sich die Schnittstelle verhalten soll, wenn sie aufgerufen wird.
    • Die Web-Entität beschreibt die Daten, mit denen die Schnittstelle interagiert.
  • Über das Kontextmenü einer Web-Schnittstelle werden mit dem Befehl Web-Entitäten bearbeiten die Web-Entitäten im Modul Web-Schnittstellen zur Bearbeitung aufgerufen, die mit dieser Web-Schnittstelle konfiguriert wurden.

warning Hinweise

Ab DB 39.5.14

  • Um Web-Schnittstellen nutzen zu können, müssen die PLANTA Link-Webservices in der web.conf aktiviert und konfiguriert sein:
  • Sind die Webservices nicht aktiviert, werden an manchen Stellen die Schaltflächen zur Ausführung verschiedener Aktionen, für die die Webservices erforderlich sind, nicht angezeigt.
  • NEU Web-Schnittstellen verwenden standardmäßig den Fully Qualified Domain Name (FQDN) als Adresse. Ist dieser nicht verfügbar wird auf den Hostnamen der Maschine zurückgegriffen. Ist dieser nicht verfügbar wird auf die IP der Maschine zurückgegriffen. Ein expliziter Hostname kann mit der Globalen Einstellung planta_link_hostname definiert werden.

stop Bitte für alle Felder in den Web-Schnittstellen-Modulen Groß-/Kleinschreibung beachten!

Ab DB 39.5.11

  • Um Web-Schnittstellen nutzen zu können, müssen die PLANTA Link-Webservices in der web.conf aktiviert und konfiguriert sein:
  • Sind die Webservices nicht aktiviert, werden an manchen Stellen die Schaltflächen zur Ausführung verschiedener Aktionen, für die die Webservices erforderlich sind, nicht angezeigt.

stop Bitte für alle Felder in den Web-Schnittstellen-Modulen Groß-/Kleinschreibung beachten!

Bis DB 39.5.11

  • Um Web-Schnittstellen nutzen zu können, müssen die PLANTA Link-Webservices aktiviert und konfiguriert sein:
  • Sind die Webservices nicht aktiviert, werden an manchen Stellen die Schaltflächen zur Ausführung verschiedener Aktionen, für die die Webservices erforderlich sind, nicht angezeigt.

stop Bitte für alle Felder in den Web-Schnittstellen-Modulen Groß-/Kleinschreibung beachten!

Methoden

info Verhalten der Klasse DefaultServiceImplementation:
  • GET
    • Basierend auf der konfigurierten Web-Entität werden Daten aus der Datenbank abgerufen.
    • Mit einem URL-Filter kann die Auswahl beschränkt werden.
    • Wenn Daten gefunden werden, wird die Anfrage mit Statuscode 200 beantwortet (Response). Diese Antwort beinhaltet im Body eine json-formatierte Liste der Rückgabewerte.
    • Wenn keine Daten gefunden werden, wird die Anfrage mit Statuscode 404 beantwortet
  • PUT
    • Erwartet im Body des HTTP-Requests ein json-enkodiertes Dictionary, dessen Schlüssel auf die zugeordnete Web-Entität passen.
      • Wenn ein Attribut als Muss-Feld deklariert ist und im Request fehlt, schlägt der Request mit Statuscode 500 fehl.
      • Wenn ein zusätzliches Attribut im Request vorhanden ist, das nicht in der Web-Entität als Attribut vermerkt ist, schlägt der Request ebenfalls mit Statuscode 500 fehl.
    • Wurden die korrekten Attribute angegeben, lädt die Schnittstelle alle Zeilen aus der Datentabelle der Web-Entität, eingeschränkt durch den optionalen URL-Filter.
    • Die entsprechenden Daten werden mit den übergebenen Attributen des Requests aktualisiert.
    • Hat alles geklappt, kommt die Response mit dem Statuscode 200 zurück.
  • POST
    • Erwartet im Body des HTTP-Requests ein json-enkodiertes Dictionary, dessen Schlüssel auf die zugeordnete Web-Entität passen.
      • Wenn ein Attribut als Muss-Feld deklariert ist und im Request fehlt, schlägt der Request mit Statuscode 500 fehl.
      • Wenn ein zusätzliches Attribut im Request vorhanden ist, das nicht in der Web-Entität als Attribut vermerkt ist, schlägt der Request ebenfalls mit Statuscode 500 fehl.
    • Wurden die korrekten Attribute angegeben, erstellt die Schnittstelle einen neuen Datensatz in der Datentabelle der Web-Entität.
    • Die Autonummer-DIs werden automatisch gefüllt, unabhängig davon, ob sie als Attribute in der Web-Entität angegeben sind.
    • Die übergebenen Werte werden in die entsprechenden Spalten geschrieben.
    • Hat alles geklappt, kommt die Response mit Statuscode 200 zurück.
    • Im Body der Response steht ein json-enkodiertes Dictionary, das die Python-IDs der Autonummern als Schlüssel und deren generierten Wert als Wert beinhaltet.
  • DELETE
    • Löscht alle Daten aus der Tabelle der Web-Entität, eingeschränkt durch den optionalen URL-Filter.
    • Wurde mindestens eine Zeile gelöscht, hat die Response den Statuscode 200
    • Wurden keine Daten gelöscht. bekommt die Response den Statuscode 404

index Siehe auch: Web-Schnittstellen-Workflows: GET, PUT, POST, DELETE

Neue Web-Schnittstelle anlegen

Ab DB 39.5.12

more Vorgehensweise
  • Neue Web-Schnittstelle einfügen:
    • Über den Kontextmenüeintrag Einfügen --> Web-Schnittstelle oder
    • Klick auf den Button Einfügen
  • Felder im Kopfbereich wie folgt ausfüllen:
    • Die Bezeichnung ist frei wählbar
    • Das Feld Aktiv muss aktiviert werden, bevor die Schnittstelle eingesetzt wird.
    • Im Feld Url einen Platzhalter anlegen, beispielsweise: /load/{resource}
    • Einen API Schlüssel vergeben
    • Das Feld Log-Level gibt je nach Auswahl an, was geloggt werden soll.
    • Die gewünschte GET-Implementation (oder PUT, POST, DELETE) auswählen
    • Die gewünschte Entität auswählen
  • Speichern
  • Nach Auswahl der Entität kann mit einem Klick auf den Button KonfigButton.png der URL-Filter konfiguriert werden.
  • Über den Button TestButton.png kann die Schnittstelle im Modul Web-Schnittstellen testen getestet werden.

Bis DB 39.5.12

more Vorgehensweise
  • Neue Web-Schnittstelle einfügen:
    • Über den Kontextmenüeintrag Einfügen --> Web-Schnittstelle oder
    • Klick auf den Button Einfügen
  • Felder im Kopfbereich wie folgt ausfüllen:
    • Die Bezeichnung ist frei wählbar
    • Das Feld Aktiv muss aktiviert werden, bevor die Schnittstelle eingesetzt wird.
    • Im Feld Url einen Platzhalter anlegen, beispielsweise: /load/{resource}
    • Einen API Schlüssel vergeben
    • Das Feld Log-Level gibt je nach Auswahl an, was geloggt werden soll.
    • Die gewünschte GET-Implementation (oder PUT, POST, DELETE) auswählen
    • Die gewünschte Entität auswählen
  • Speichern
  • Nach Auswahl der Entität kann mit einem Klick auf den Button WerkzeugButton.png der URL-Filter konfiguriert werden.
  • Über den Button ErdeButton.png kann die Schnittstelle im Modul Web-Schnittstellen testen getestet werden.


index Siehe auch:

Ab DB 39.5.11

note Allgemeines

note Workflows (Tutorials)

note Funktionen

note Standard-Schnittstellen

note Module

note Datentabellen

Topic attachments
I Attachment Action Size Date Who Comment
pngpng ErdeButton.png manage 0.9 K 2019-09-09 - 12:02 UnknownUser  
pngpng KonfigButton.png manage 0.7 K 2019-09-09 - 12:02 UnknownUser  
pngpng TestButton.png manage 0.5 K 2019-09-09 - 12:02 UnknownUser  
pngpng WerkzeugButton.png manage 0.7 K 2019-09-09 - 12:03 UnknownUser  
Topic revision: r17 - 2019-09-09 - 12:03:02 - MareikeRichers








 
  • Suche in Topic-Namen

  • Suche in Topic-Inhalten