Vad är GraphQL
Frågespråk för API:er
GraphQL är ett frågespråk och runtime för API:er som låter klienter begära endast den data de behöver.
Kärnkoncept
- Schema — beskrivning av datatyper och operationer
- Queries — läsa data
- Mutations — ändra data
- Subscriptions — realtidsuppdateringar
Fördelar jämfört med REST
- Flexibilitet — klienten definierar svarsstrukturen
- En endpoint — istället för flera REST-endpoints
- Ingen over-fetching — ta endast emot begärda fält
- Typsäkerhet — strikt schema med validering
Frågeexempel
query {
user(id: "1") {
name
email
posts {
title
}
}
}
När ska man använda
Idealiskt för applikationer med olika klienter (webb, mobil), komplexa datarelationer och prestandakrav.