Eine tragfähige API besteht nicht aus CRUD-Endpunkten allein. Ressourcen, Statuscodes, Fehlerformate, Berechtigungen und Versionierung bilden einen Vertrag, der von mehreren Clients dauerhaft genutzt wird.
Das Seminar entwickelt diesen Vertrag zuerst fachlich und setzt ihn anschließend mit Grails-Controllern, Services und JSON Views um. Positive und negative Testfälle begleiten jeden Implementierungsschritt.
Inhaltsverzeichnis
- Zielgruppe
- Voraussetzungen
- Lernziele
- Modul 1: REST-Ressourcen und API-Verträge entwerfen
- Modul 2: URL-Mappings, Ressourcen und Versionierung
- Modul 3: Datenbindung, Command Objects und Validierung
- Modul 4: REST-Endpunkte mit Controllern und JSON Views
- Modul 5: JSON Views und strukturierte API-Ausgaben
- Modul 6: API-Sicherheit, CORS und Missbrauchsschutz
- Modul 7: Vertrags-, Integrations- und Fehlertests für APIs
- Praxisprojekt und Übungen
- Arbeitsweise
Zielgruppe
Backend- und Full-Stack-Entwickler, API-Entwickler sowie Java- oder Spring-Entwickler mit Grails-Grundkenntnissen.
Voraussetzungen
Sichere Grundlagen in HTTP und JSON, objektorientierte Programmierung sowie grundlegende Kenntnisse von Grails-Controllern und Services.
Lernziele
- Ressourcen und HTTP-Semantik konsistent modellieren.
- REST-Endpunkte von Persistenz- und Domain-Details entkoppeln.
- JSON Views und einheitliche Fehlerformate einsetzen.
- API-Zugriffe, CORS und sensible Ausgaben absichern.
- Vertrag und Fehlerszenarien automatisiert testen.
Modul 1: REST-Ressourcen und API-Verträge entwerfen
Die API wird aus fachlichen Ressourcen, Zustandsübergängen und klaren Fehlerfällen abgeleitet.
- Schritt 1: Ressourcen, Identitäten und Beziehungen festlegen.
- Schritt 2: HTTP-Methoden, Statuscodes und Idempotenz konsistent zuordnen.
- Schritt 3: Request- und Response-Modelle von internen Domain-Klassen trennen.
- Schritt 4: Versionierungs-, Pagination- und Filterstrategie dokumentieren.
Modul 2: URL-Mappings, Ressourcen und Versionierung
Saubere, stabile URLs werden als Bestandteil der Anwendungsarchitektur geplant.
- Schritt 1: Konventionelle und benutzerdefinierte URL-Mappings vergleichen.
- Schritt 2: Ressourcen, verschachtelte Ressourcen und HTTP-Methoden modellieren.
- Schritt 3: Namensräume oder Pfadsegmente für API-Versionen einführen.
- Schritt 4: Mapping-Konflikte mit automatisierten Tests erkennen.
Modul 3: Datenbindung, Command Objects und Validierung
Eingabedaten werden nur in ausdrücklich freigegebene Strukturen gebunden und fachlich validiert.
- Schritt 1: Bindungsquellen und zulässige Felder festlegen.
- Schritt 2: Command Objects mit deklarativen Constraints entwerfen.
- Schritt 3: Verschachtelte Daten, Datumswerte und Aufzählungen sicher konvertieren.
- Schritt 4: Validierungsfehler internationalisierbar und testsicher aufbereiten.
Modul 4: REST-Endpunkte mit Controllern und JSON Views
Die entworfenen Verträge werden mit Grails-Mitteln umgesetzt, ohne Persistenzdetails nach außen durchzureichen.
- Schritt 1: Ressourcenorientierte URL-Mappings und Controller erzeugen.
- Schritt 2: Command Objects für eingehende Daten und Service-Aufrufe einsetzen.
- Schritt 3: JSON Views oder Renderer für konsistente Ausgaben erstellen.
- Schritt 4: Fehler, Validierung und nicht gefundene Ressourcen einheitlich behandeln.
Modul 5: JSON Views und strukturierte API-Ausgaben
JSON-Antworten werden getrennt von Controller-Logik modelliert und für unterschiedliche Anwendungsfälle wiederverwendet.
- Schritt 1: JSON Views mit typisiertem Modell erstellen.
- Schritt 2: Listen, Detailansichten und verschachtelte Beziehungen kontrolliert rendern.
- Schritt 3: Felder abhängig von Rolle, Kontext oder API-Version auswählen.
- Schritt 4: Ausgabeformate durch automatisierte Strukturtests absichern.
Modul 6: API-Sicherheit, CORS und Missbrauchsschutz
Zugriffsschutz wird als Bestandteil des API-Vertrags und nicht als nachträglicher Filter behandelt.
- Schritt 1: Authentifizierungsverfahren für Browser-, System- und Mobilzugriffe auswählen.
- Schritt 2: Rollen und Berechtigungen an Ressourcen und Operationen binden.
- Schritt 3: CORS, CSRF und sensible Fehlerausgaben korrekt konfigurieren.
- Schritt 4: Rate-Limit-, Audit- und Schutzanforderungen in die Architektur aufnehmen.
Modul 7: Vertrags-, Integrations- und Fehlertests für APIs
API-Verhalten wird auf Struktur, Statuscodes, Berechtigungen und Rückwärtskompatibilität geprüft.
- Schritt 1: Positive und negative Endpunkt-Tests erstellen.
- Schritt 2: JSON-Strukturen und Pflichtfelder gezielt verifizieren.
- Schritt 3: Authentifizierungs- und Autorisierungsfälle automatisieren.
- Schritt 4: Änderungen am Vertrag mit Regressionstests absichern.
Praxisprojekt und Übungen
Eine kleine Ressourcen-API wird entworfen, implementiert und mit Rollen geschützt. Dazu entstehen Tests für erfolgreiche Abläufe, Validierungsfehler, fehlende Ressourcen und unzulässige Zugriffe.
Arbeitsweise
Kurze fachliche Einführungen wechseln mit Demonstrationen, angeleiteten Implementierungsschritten, selbstständigen Übungen und gemeinsamer Auswertung. Entscheidungen werden im Code, in Tests und in einer knappen technischen Dokumentation nachvollziehbar festgehalten.
Fachbereichsleiter / Leiter der Trainer / Ihre Ansprechpartner
-

Lucas Beich
Telefon: + 49 (221) 74740055
E-Mail: lucas.beich@seminar-experts.de
Seminardetails
| Dauer: | 2 Tage ca. 6 h/Tag, Beginn 1. Tag: 10:00 Uhr, weitere Tage 09:00 Uhr |
| Preis: |
Öffentlich oder Live Stream: € 1.198 zzgl. MwSt. Inhaus: € 3.400 zzgl. MwSt. |
| Teilnehmeranzahl: | min. 2 - max. 8 |
| Teilnehmer: | Backend- und Full-Stack-Entwickler, API-Entwickler sowie Java- oder Spring-Entwickler mit Grails-Grundkenntnissen. |
| Voraussetzungen: | Sichere Grundlagen in HTTP und JSON, objektorientierte Programmierung sowie grundlegende Kenntnisse von Grails-Controllern und Services. |
| Standorte: | Stream Live, Inhaus/Firmenseminar, Berlin, Bremen, Darmstadt, Dresden, Erfurt, Essen, Flensburg, Frankfurt, Freiburg, Friedrichshafen, Hamburg, Hamm, Hannover, Jena, Kassel, Köln, Konstanz, Leipzig, Luxemburg, Magdeburg, Mainz, München, Münster, Nürnberg, Paderborn, Potsdam, Regensburg, Rostock, Stuttgart, Trier, Ulm, Wuppertal, Würzburg |
| Methoden: | Vortrag, Demonstrationen, praktische Übungen am System |
| Seminararten: | Öffentlich, Webinar, Inhaus, Workshop - Alle Seminare mit Trainer vor Ort, Webinar nur wenn ausdrücklich gewünscht |
| Durchführungsgarantie: | ja, ab 2 Teilnehmern |
| Sprache: | Deutsch - bei Firmenseminaren ist auch Englisch möglich |
| Seminarunterlage: | Dokumentation auf Datenträger oder als Download |
| Teilnahmezertifikat: | ja, selbstverständlich |
| Verpflegung: | Kalt- / Warmgetränke, Mittagessen (wahlweise vegetarisch) |
| Support: | 3 Anrufe im Seminarpreis enthalten |
| Barrierefreier Zugang: | an den meisten Standorten verfügbar |
| Weitere Informationen unter + 49 (221) 74740055 |
Seminartermine
Die Ergebnissliste kann durch Anklicken der Überschrift neu sortiert werden.
