Zum Inhalt springen
_CORE
KI & Agentensysteme Unternehmensinformationssysteme Cloud & Platform Engineering Datenplattform & Integration Sicherheit & Compliance QA, Testing & Observability IoT, Automatisierung & Robotik Mobile & Digitale Produkte Banken & Finanzen Versicherungen Öffentliche Verwaltung Verteidigung & Sicherheit Gesundheitswesen Energie & Versorgung Telko & Medien Industrie & Fertigung Logistik & E-Commerce Retail & Treueprogramme
Referenzen Technologien Blog Know-how Tools
Über uns Zusammenarbeit Karriere
CS EN DE
Lassen Sie uns sprechen

Der vollstaendige Leitfaden zu GraphQL

17. 12. 2023 1 Min. Lesezeit intermediate

GraphQL ist eine Alternative zu REST. Clients fordern genau die Daten an, die sie benoetigen.

REST vs GraphQL

  • REST: mehrere Endpunkte, feste Antworten
  • GraphQL: ein Endpunkt, flexible Abfragen
  • REST: Over-/Under-Fetching
  • GraphQL: genau das, was Sie brauchen

Schema

type User {  
  id: ID!  
  name: String!  
  email: String  
  posts: [Post!]!  
}  

type Post {  
  id: ID!  
  title: String!  
  author: User!  
}

Query

query {  
  user(id: "123") {  
    name  
    email  
    posts {  
      title  
    }  
  }  
}

Mutation

mutation {  
  createUser(input: { name: "Hans", email: "[email protected]" }) {  
    id  
    name  
  }  
}

Subscription (Echtzeit)

subscription {  
  messageAdded(channelId: "general") {  
    id  
    text  
    author { name }  
  }  
}

N+1-Problem

Ein GraphQL-Resolver fuer Posts kann N Datenbankabfragen ausloesen. Loesung: DataLoader fuer Batching.

Wann GraphQL einsetzen

  • Mobile Apps (Netzwerk-Traffic minimieren)
  • Komplexe verschachtelte Daten
  • Mehrere Clients mit unterschiedlichen Anforderungen
  • Echtzeit mit Subscriptions

Wann NICHT einsetzen

  • Einfache CRUD-API
  • Datei-Uploads (REST ist einfacher)
  • Caching (REST + CDN ist einfacher)

Empfehlung

REST reicht fuer die meisten APIs aus. Fuegen Sie GraphQL hinzu, wenn Sie komplexe Datenanforderungen oder mehrere Clients haben.

graphqlapibackend
Teilen:

CORE SYSTEMS Team

Wir bauen Kernsysteme und KI-Agenten, die den Betrieb am Laufen halten. 15 Jahre Erfahrung mit Enterprise-IT.