Читать книгу GraphQL - Dominik Kress - Страница 6
Inhaltsverzeichnis
Оглавление1.2.1Flexibilität für Anbieter und Konsument
1.2.2Einheitliches Design und Funktionen
1.4Mögliche API-Technologien und -Spezifikationen
1.4.1Geschichte der Remote Execution
1.4.6Die Technologien im Vergleich
2.1.1Geschäftsmodelle für private und öffentliche APIs
2.3Erste Schritte: Allgemeines Vorgehen
2.3.2Funktionale Anforderungen
2.3.3Nicht-funktionale Anforderungen
2.3.5Gemeinsames Vokabular durch Schema.org erzeugen
3.1Das Graphen-Modell erzeugen
3.2.9Inline-Fragmente in Querys
3.2.11Mutationen: Datenmanipulation mit GraphQL
3.2.12Subscriptions: GraphQL Message Streaming
3.3Das GraphQL-Typ-System: Schemadefinition
3.3.4Typ-Modifikatoren: Listen und Non-Null
4API-Design I: Rund ums Schema des API
4.2.1Schemadesign-Empfehlungen
4.2.2Mutation-Designempfehlungen
4.4.2Offset-basierte Pagination
4.4.3Cursor-basierte Pagination
4.5.2Type und Validation Errors
4.5.3Fehler mit partiellen Ergebnissen
4.5.4Fehler ohne Teilergebnisse
5API-Design II: Die Landschaft um das API
5.1.1GraphQLs Probleme mit Autorisierung
5.1.2Autorisierung auf Ebene der Geschäftslogik
5.3.1GraphQLs Evolution im Beispiel
5.4Monitoring und Instrumentation
5.4.1Feingranulares Monitoring
5.4.2Verstehen, wie das API genutzt wird
5.5Performanzoptimierung: Caching und Batching
6Implementierung mit Node I: Das erste Schema
6.2Initiales Aufsetzen des Projekts
6.2.1Das Node.js-Projekt aufsetzen
6.2.2Den GraphQL-Server mit Apollo aufsetzen
6.3Das initiale Schema aufsetzen
6.3.1Parameter und erste Resolver-Logik
6.3.2Feld-Level-Resolver und Interfaces
6.3.3Interfaces und Filter für IDs
7Implementierung mit Node II: Erweitertes Schema und Mutationen
7.1.3Resolver Map aufteilen und Models durch Context verteilen
7.2.3Wunschliste mit Input-Typen erstellen
7.2.4Wunschlisten kaskadierend löschen
8Implementierung mit Java I: Das erste Schema
8.2.1Den GraphQL-Server aufsetzen
8.3Das initiale Schema aufsetzen
8.3.1Objekte im Schema auflösen
8.3.4Ergebnisse filtern durch Parameter
8.3.6ID-Referenz-basierte Objekt-Relationen
9Implementierung mit Java II: Erweitertes Schema und Mutationen
9.1Selbstdefinierte Skalar- und Geschäftslogik-Felder
9.1.1Skalar-Typ in Schema und POJO definieren
9.1.2Die GraphQLScalarType-Implementierung
9.1.3Geschäftslogik-Felder und -Parameter
9.2Mutationen erstellen und Schemamodularisierung
9.2.3Adressen erstellen: Input-Typen