Mission: Eine Forms-Antwort startet einen Cloud-Workflow; darin wird der HTTP-Hop über Gravitee und den .NET-Service nach Odoo synchron und kontrolliert ausgeführt.
OpenAPIGravitee.NETLogic Apps7 Übungen
Datenfluss
Ein hybrider Workflow mit synchronen Hops
Microsoft Forms Kundenanfrage
→
Logic Apps Orchestrierung
→
Gravitee → .NET → Odoo Schutz · Logik · Daten
!
Wichtige Zeitgrenze: Die Person im Browser wartet nicht synchron auf Odoo. Forms löst einen Workflow aus. Innerhalb dieses Workflows wartet Logic Apps jedoch synchron auf Gateway, Service und Odoo. Cloud- und Zielsysteme benötigen bereitgestellte Testzugänge und sind nicht Teil des mitgelieferten Docker-Stacks.
Der Aufrufer wartet auf die Antwort. Das passt für kurze Abfragen, Validierungen und unmittelbares Benutzerfeedback. Lange oder unsichere Prozesse gehören nicht in eine synchrone Kette.
2. API-Vertrag und OpenAPI
Der Vertrag definiert Ressourcen, Methoden, Schemas, Statuscodes und Security. Er trennt Konsumenten von der internen Implementierung und macht Tests reproduzierbar.
3. Verantwortung von Gravitee
Gateway-Aufgaben: Authentifizierung, Rate Limit, Routing, einfache Policies und Metriken. Fachliche Produktlogik und Odoo-Mapping bleiben im Service.
4. Authentifizierung und Autorisierung
Authentifizierung klärt, wer anfragt. Autorisierung klärt, was diese Identität darf. API-Keys sind für das Labor einfach; produktiv sind kurzlebige Tokens und klar definierte Berechtigungen oft geeigneter.
5. Timeout und Fehlervertrag
Ein Timeout sagt nicht sicher, ob das Ziel die Aktion ausgeführt hat. Einheitliche Fehlerobjekte und Correlation-IDs machen Diagnose möglich.
6. Low-Code oder eigener Service?
Logic Apps eignet sich für Connectoren und transparente Orchestrierung. Komplexe, wiederverwendbare oder stark getestete Fachlogik passt besser in einen versionierten Service.
Rufe Preis und Verfügbarkeit für KT-100 direkt am bereitgestellten Microservice ab. Dokumentiere Request, Response und Dauer. Ohne Schulzugang dient das öffentliche Spital-Sync-Labor als technisch äquivalenter Nachweis.
GET <SCHUL-SERVICE-URL>/api/products/KT-100/availability
Accept: application/json
Pflicht25 min
2. API in Gravitee veröffentlichen
Lege Routing und einen Plan an. Der externe Pfad darf die interne Serviceadresse nicht verraten.
Abnahmekriterium
Der gleiche Endpunkt ist über das Gateway erreichbar, der direkte Service bleibt davon unabhängig.
Prüfen: Backend URL, Context Path, Deployment, aktiver Plan und Gateway-Status.
Pflicht25 min
3. API-Key und Rate Limit
Schütze die API mit einem Key und begrenze sie auf fünf Anfragen pro Minute. Teste gültigen Key, falschen Key und Überschreitung.
Sende das Formular ab. Forms startet den Workflow; anschließend ruft die Logic App Gravitee synchron auf, der .NET-Service validiert und Odoo erstellt einen Entwurf. Markiere im Sequenzdiagramm, wer auf wen wartet.
Nachweis: Forms Response ID, Logic-App-Lauf, Gateway-Aufruf, Service-Log und Odoo-Referenz gehören zusammen.
Challenge30 min
7. Timeout richtig behandeln
Verzögere Odoo künstlich. Entwirf eine verständliche Antwort für den Benutzer und entscheide, ob ein automatischer Retry sicher ist.
Achtung: Bei einem schreibenden POST kann blindes Wiederholen Doppelaufträge erzeugen. Idempotency-Key oder Async-Verarbeitung prüfen.
Diskussion
Gateway, Low-Code oder Code?
Welche Logik gehört in Logic Apps, Gravitee oder .NET?
Wann wird eine synchrone Kette zu fragil?
Reicht ein API-Key im Produktivbetrieb?
Wie viel technische Information darf der Benutzer im Fehler sehen?
Moderationsziel: Nicht jedes Werkzeug soll alles tun. Verantwortungen und Betriebsfolgen müssen benannt werden.
Mini-Quiz
Eine klare Grenze
Wo gehört die Regel „Bestellmenge darf Bestand nicht überschreiten“ hin?
✓
Ergebnis des Tages Geschützter synchroner Prozess mit API-Vertrag, Microsoft-Eingangskanal und nachvollziehbarer Fehlerbehandlung.