
Funcionalidade:
Persisted queries
Persisted queries
Em uma API REST, criamos múltiplos endpoints, cada um retornando um conjunto predefinido de dados. Em uma API GraphQL, ao contrário, enviamos qualquer query a um único endpoint, que retorna exatamente os dados solicitados.
As persisted queries são queries GraphQL normais; porém, são armazenadas no servidor e acessadas pela própria URL, emulando assim um endpoint REST. Elas combinam as vantagens dessas duas APIs evitando ao mesmo tempo as suas desvantagens:
| Vantagens | Desvantagens |
|---|---|
✅ Acessada via GET ou POST | POST |
| ✅ Pode ser armazenada em cache no servidor ou em um CDN | |
| ✅ É segura: somente os dados pretendidos são expostos | |
| ✅ Sem excesso ou falta de dados — todos os dados são recuperados em uma única requisição | |
| ✅ Permite iteração rápida do projeto | |
| ✅ Pode ser autodocumentada | |
| ✅ Oferece aos clientes a possibilidade de criar e publicar a query |
