K

GraphQL - Présentation

graphql-logo

Introduction

GraphQL est un langage de requête et un runtime moderne qui offre aux développeurs un contrôle précis sur la récupération et la manipulation des données.

Une alternative aux APIs REST

Avec les API REST, les clients doivent souvent effectuer plusieurs appels pour récupérer toutes les données nécessaires, ce qui peut entraîner un surchargement du réseau.

GraphQL, lui, permet aux clients de spécifier précisément les champs de données dont ils ont besoin dans une seule requête.

Teasing

API REST:

Pour récupérer les informations sur les utilisateurs avec une API REST, vous pourriez avoir endpoint tel que /users et utiliser différentes routes pour obtenir des détails spécifiques.

Exemple de requête pour récupérer tous les utilisateurs :

GET /users

La réponse :

[
  {
    "id": 1,
    "name": "Toto",
    "email": "toto@example.com"
  },
  {
    "id": 2,
    "name": "tutu",
    "email": "tutu@example.com"
  }
]

API GraphQL:

Avec une API GraphQL, vous pouvez définir un schéma qui représente les types de données disponibles et les opérations possibles.

Exemple de requête GraphQL pour récupérer tous les utilisateurs :

query {
  users {
    id
    name
  }
}

Exemple de réponse JSON :

{
  "data": {
    "users": [
      {
        "id": 1,
        "name": "John Doe"
      },
      {
        "id": 2,
        "name": "Jane Smith"
      }
    ]
  }
}

Comme vous pouvez le voir, avec l'API GraphQL, vous pouvez spécifier exactement les champs dont vous avez besoin dans la requête, ce qui évite le transfert de données inutiles.

Vous pouvez récupérer plusieurs types de données en une seule requête, ce qui réduit le nombre d'appels réseau nécessaires. C'est sympa pour la planete non ? 🌱 #howdareyou