REST o GraphQL? Scegli bene, o sprechi risorse
REST o GraphQL? Scegli bene, o sprechi risorse
REST e GraphQL sono due modi per far dialogare frontend e backend.
Funzionano entrambi, ma non sempre sono intercambiabili.
Vediamo quando è meglio l’uno o l’altro, senza tecnicismi inutili.
🔁 REST: semplice e leggibile
REST segue l’idea di “una risorsa = un URL”.
✅ Ideale per:
- app semplici
- caching automatico
- chiarezza nel codice
⚡ GraphQL: flessibile e potente
GraphQL ha un solo endpoint: /graphql
.
Mandi una query, ricevi esattamente ciò che chiedi.
✅ Ideale per:
- frontend complessi
- app mobile con dati sparsi
- evitare troppe richieste consecutive
🔍 Esempio di query GraphQL
Con GraphQL, puoi richiedere dati molto specifici con una sola chiamata.
🆚 REST
Per ottenere i dati di un utente e i suoi post, con REST dovresti fare due chiamate:
GET /users/1
→ info sull’utenteGET /users/1/posts
→ post dell’utente
⚡ GraphQL
Una sola chiamata:
{
user(id: 1) {
name
email
posts {
title
publishedAt
}
}
}
📥 Risposta ricevuta:
{
"data": {
"user": {
"name": "Mario Rossi",
"email": "mario@example.com",
"posts": [
{ "title": "Hello GraphQL", "publishedAt": "2024-10-01" },
{ "title": "REST vs GraphQL", "publishedAt": "2024-11-15" }
]
}
}
}
➡️ In una singola query, ottieni l’utente e i suoi post, con solo i campi che ti servono.
🎯 Esempio pratico
✅ REST
Un gestionale ordini:
/orders
/orders/123
/orders/123/items
Chiaro, stabile, cache-friendly.
✅ GraphQL
Un’app mobile con profilo + feed + commenti?
Tutto in una sola query, senza overfetch.