GraphQL Query
Eine GraphQL-Query verwendet die Syntax { field(args) { subfield } }, um genau die benötigten Datenfelder auszuwählen, und vermeidet Over- und Under-Fetching.
Zweck
Clients die benötigten Felder und verschachtelten Beziehungen deklarieren lassen und der Server genau diese Daten zurückgibt, wodurch REST-Over-Fetching entfällt.
Mechanismus
Eine Query enthält ein Feld-Selection-Set; jedes Feld kann Argumente, Aliase, Direktiven (@skip/@include) und verschachtelte Sub-Selektionen haben. Variablen $var parametrisieren sie. Der Server validiert gegen das Schema, führt Resolver aus und gibt die Daten zurück.
Anwendungsfälle
- Präzises API-Daten-Fetching
- Deklarative Frontend-Queries
- On-Demand-Fetching auf Mobilgeräten