Logo

Funkcja:

Persisted queries

Persisted queries

W API REST tworzymy wiele endpointów, z których każdy zwraca predefiniowany zestaw danych. W API GraphQL natomiast wysyłamy dowolną query do jednego endpointu, który zwraca dokładnie żądane dane.

Persisted queries to zwykłe queries GraphQL, jednak są one przechowywane na serwerze i udostępniane pod własnym adresem URL, emulując w ten sposób endpoint REST. Łączą zalety obu tych API, jednocześnie unikając ich wad:

ZaletyWady
✅ Dostępna via GET lub POST❌ Dostępna tylko via POST
✅ Może być buforowana na serwerze lub w CDN❌ Wymaga dodatkowej warstwy po stronie klienta wyłącznie do buforowania
✅ Jest bezpieczna: udostępniane są tylko zamierzone dane❌ Dane są dostępne dla wszystkich, w tym dla złośliwych podmiotów
✅ Bez nadmiaru lub braku danych — wszystkie dane są pobierane w jednym żądaniu❌ Może być wolna, ponieważ aplikacja może potrzebować wielu żądań do pobrania wszystkich danych
✅ Umożliwia szybką iterację projektu❌ Tworzenie wszystkich endpointów jest żmudne
✅ Może być samodokumentująca❌ Tworzenie dokumentacji jest obowiązkowe
✅ Daje klientom możliwość tworzenia i publikowania query❌ Publikowanie endpointów odbywa się przez kod
Persisted query w edytorze
Persisted query w edytorze

Zapisz się do naszego newslettera

Bądź na bieżąco ze wszystkimi aktualizacjami Gato GraphQL.