GraphQL
GraphQL lässt Anwendungen Felder über ein typisiertes API-Schema anfragen. Der Server bleibt für Datenzugriff und Berechtigungen verantwortlich.
Die benötigten Felder einer API auswählen
GraphQL ist eine Abfragesprache für APIs mit Regeln für deren serverseitige Ausführung. Ein typisiertes Schema legt fest, welche Daten und Operationen angeboten werden. Die Anwendung wählt daraus die benötigten Felder aus. GraphQL setzt dabei keine bestimmte Datenbank voraus.
Ein fiktives Softwareunternehmen plant ein Kundenportal. Die Auswahl { project(id: "P-42") { name } } fordert den Namen eines Projekts an, sofern das eigene Schema diese Felder und das Argument anbietet. Dieses erfundene Beispiel ist keine Abfrage eines vorhandenen Dienstes. Die Serverimplementierung muss die Daten beschaffen und entscheiden, ob die anfragende Person sie sehen darf. Ein schemakonformer Aufruf allein erteilt keine Zugriffsrechte; das interne Feld internalRate soll für Kunden auch dann gesperrt bleiben, wenn sie es ausdrücklich anfragen.
Für das Portal sind damit sowohl die angebotenen Felder als auch ihre Zugriffsregeln festzulegen. Die Feldauswahl hilft bei unterschiedlichen Datenbedürfnissen von Ansichten; tatsächliche Antwortzeiten und Datenbankarbeit müssen an der Implementierung geprüft werden.
Quellen
Verwandte Begriffe
- APIEine API legt fest, wie Software Funktionen oder Daten anderer Software nutzen kann.
- RESTREST beschreibt Regeln für verteilte Schnittstellen. Ressourcen, zustandslose Anfragen und Verknüpfungen gehören zum Architekturansatz.
- Server-Sent EventsServer-Sent Events übertragen über eine HTTP-Verbindung Textmeldungen vom Server zum Client, etwa zum Fortschritt eines Hintergrundauftrags.
- Entity TagEin ETag kennzeichnet eine bestimmte Darstellungsversion einer HTTP-Ressource und ermöglicht bedingte Abrufe oder Änderungen.
- Cross-Origin Resource SharingCORS steuert im Browser die Freigabe von Antworten über Origin-Grenzen. Es ersetzt weder die Anmeldung noch die Berechtigungsprüfung einer API.
- Electronic Data InterchangeEDI überträgt strukturierte Geschäftsdokumente zwischen Systemen. Format, Partnerprofil, Datenzuordnung und Rückmeldungen müssen zusammenpassen.
Ihr Vorhaben mit ASES
Beschreiben Sie uns Ihr Vorhaben. Wir melden uns mit einer ersten Einschätzung.