Logo

Functie:

Persisted queries

Persisted queries

Bij een REST API maak je meerdere endpoints aan, elk met een vooraf gedefinieerde set gegevens. Bij een GraphQL API stuur je daarentegen elke query naar één enkel endpoint, dat precies de gevraagde gegevens teruggeeft.

Persisted queries zijn gewone GraphQL queries, maar ze worden op de server opgeslagen en zijn toegankelijk via een eigen URL, waarmee ze een REST-endpoint emuleren. Ze combineren de voordelen van beide API's en vermijden tegelijk hun nadelen:

VoordelenNadelen
✅ Toegankelijk via GET of POST❌ Alleen toegankelijk via POST
✅ Kan worden gecached op de server of CDN❌ Vereist een extra laag aan clientzijde enkel voor caching
✅ Veilig: alleen bedoelde data wordt blootgesteld❌ Data is zichtbaar voor iedereen, inclusief kwaadwillenden
✅ Geen under/over fetching van data, alle data wordt in één verzoek opgehaald❌ Kan traag zijn, omdat de applicatie meerdere verzoeken nodig kan hebben om alle data op te halen
✅ Maakt snelle iteratie van het project mogelijk❌ Het aanmaken van alle endpoints is omslachtig
✅ Kan zichzelf documenteren❌ Het produceren van documentatie is verplicht
✅ Biedt clients de mogelijkheid om queries aan te maken en te publiceren❌ Endpoints publiceren gebeurt via code
Persisted query in de editor
Persisted query in de editor

Abonneer je op onze nieuwsbrief

Blijf op de hoogte van alle updates over Gato GraphQL.