Persisted Queries
Użyj queries GraphQL, aby tworzyć wstępnie zdefiniowane endpointy jak w REST, czerpiąc korzyści z obu API.

Click to watch tutorial video - 08:19
W API REST tworzymy wiele endpointów, z których każdy zwraca wstępnie zdefiniowany zestaw danych. W API GraphQL natomiast wysyłamy dowolne query do jednego endpointu, który zwraca dokładnie żądane dane.
Persisted queries to zwykłe queries GraphQL, jednak są przechowywane na serwerze i dostępne pod własnym URL-em, emulując w ten sposób endpoint REST. Oferują zalety obu tych API, unikając jednocześnie ich wad:
| Zalety | Wady |
|---|---|
✅ Dostępne przez GET lub POST | POST |
| ✅ Może być buforowane na serwerze lub w CDN | |
| ✅ Jest bezpieczne: ujawniane są tylko zamierzone dane | |
| ✅ Brak pobierania zbyt małej lub zbyt dużej ilości danych; wszystkie dane pobierane są w jednym żądaniu | |
| ✅ Umożliwia szybką iterację projektu | |
| ✅ Może być samo-dokumentujące | |
| ✅ Umożliwia klientom tworzenie i publikowanie query |

Po opublikowaniu persisted query możemy ją wykonać za pomocą jej permalinku.
Persisted query można wykonać przez klienta GraphiQL lub bezpośrednio w przeglądarce (ponieważ jest dostępna przez GET), a uzyskamy żądane dane w formacie JSON:

Persisted queries można zarządzać za pomocą kategorii i hierarchii.
