GraphQL Eine Einführung in APIs mit GraphQL.
Clasificación: | Libro Electrónico |
---|---|
Autor principal: | |
Formato: | Electrónico eBook |
Idioma: | Alemán |
Publicado: |
Heidelberg :
dpunkt.verlag,
2020.
|
Temas: | |
Acceso en línea: | Texto completo (Requiere registro previo con correo institucional) |
Tabla de Contenidos:
- Intro
- Vorwort
- API-Grundlagen
- Was ist ein API?
- Vorteile eines API
- Flexibilität für Anbieter und Konsument
- Einheitliches Design und Funktionen
- Neue Geschäftsfelder
- Innovationstreiber API
- API: Die Definition
- API-Vertrag
- Die Akteure eines API
- Release-Arten von APIs
- Mögliche API-Technologien und -Spezifikationen
- Geschichte der Remote Execution
- RESTful HTTP
- JSON:API
- gRPC
- GraphQL
- Die Technologien im Vergleich
- Von der Idee zur Umsetzung
- API Value Chain
- Geschäftsmodelle für private und öffentliche APIs
- Release-Arten
- Private APIs
- Öffentliche APIs
- Erste Schritte: Allgemeines Vorgehen
- Use Cases identifizieren
- Funktionale Anforderungen
- Nicht-funktionale Anforderungen
- Die gemeinsame Sprache
- Gemeinsames Vokabular durch Schema.org erzeugen
- Grundlagen der GraphQL-API
- Das Graphen-Modell erzeugen
- Abfragen mit GraphQL
- Grundlegende Querys
- Querys generell
- Verschachtelte Querys
- Parameter in Querys
- Variablen in Querys
- Aliases in Querys
- Fragmentierte Querys
- Direktiven in Querys
- Inline-Fragmente in Querys
- Metafelder in Querys
- Mutationen: Datenmanipulation mit GraphQL
- Subscriptions: GraphQL Message Streaming
- Das GraphQL-Typ-System: Schemadefinition
- Grundlegende Schemas
- Skalar-Typen
- Enumerations-Typen
- Typ-Modifikatoren: Listen und Non-Null
- Parameter
- Input-Typen
- Interfaces
- Union-Typen
- API-Design I: Rund ums Schema des API
- Qualitätsmerkmale
- Designempfehlungen
- Schemadesign-Empfehlungen
- Mutation-Designempfehlungen
- HTTP: Netzwerk-Design
- POST-Requests
- GET-Requests
- Responses
- Pagination
- Splicing
- Offset-basierte Pagination
- Cursor-basierte Pagination
- Edges und Connections
- Fehlermanagement
- Application Errors
- Type und Validation Errors
- Fehler mit partiellen Ergebnissen
- Fehler ohne Teilergebnisse
- API-Design II: Die Landschaft um das API
- Autorisierung
- GraphQLs Probleme mit Autorisierung
- Autorisierung auf Ebene der Geschäftslogik
- Dokumentation
- Statische Dokumentation
- Dynamische Dokumentation
- Versionierung
- GraphQLs Evolution im Beispiel
- Monitoring und Instrumentation
- Feingranulares Monitoring
- Verstehen, wie das API genutzt wird
- Performanzoptimierung: Caching und Batching
- Das 1+n-Problem
- DataLoader
- CDN-Caching
- Clientseitiges Caching
- Implementierung mit Node I: Das erste Schema
- Use Case
- Initiales Aufsetzen des Projekts
- Das Node.js-Projekt aufsetzen
- Den GraphQL-Server mit Apollo aufsetzen
- Das initiale Schema aufsetzen
- Parameter und erste Resolver-Logik
- Feld-Level-Resolver und Interfaces
- Interfaces und Filter für IDs
- Typrelationen
- Implementierung mit Node II: Erweitertes Schema und Mutationen
- Schema-Modularisierung
- Technische Separation
- Domain-Separation
- Resolver Map aufteilen und Models durch Context verteilen
- Mutationen
- Ein Produkt erstellen