Post

Symfony – Réponse JSON

Symfony – Réponse JSON

Cours 35 — Réponse JSON

Introduction

Une réponse JSON permet à Symfony d’envoyer des données à une application ou à un autre programme.

Les API utilisent très souvent ce format.


Exemple simple

1
2
3
return $this->json([
    'message' => 'Bonjour'
]);

Résultat :

1
2
3
{
    "message": "Bonjour"
}

Plusieurs données

1
2
3
4
return $this->json([
    'nom' => 'Durand',
    'prenom' => 'Paul'
]);

Résultat :

1
2
3
4
{
    "nom": "Durand",
    "prenom": "Paul"
}

Réponse avec un code HTTP

1
2
3
4
return $this->json(
    ['error' => 'Erreur de saisie'],
    400
);

Exemple de succès

1
2
3
4
return $this->json(
    ['message' => 'Enregistrement effectué'],
    200
);

Exemple dans un contrôleur

1
2
3
4
5
6
7
#[Route('/api/test')]
public function test(): Response
{
    return $this->json([
        'message' => 'API opérationnelle'
    ]);
}

Utilisation fréquente

1
2
3
4
Application Android
Application Python
Application JavaScript
API REST

Comprendre le processus

1
2
3
4
5
6
7
8
9
Client
↓
Requête
↓
Contrôleur Symfony
↓
JSON
↓
Réponse

Exemple réel

1
2
3
4
return $this->json([
    'id' => 12,
    'nom' => 'Durand'
]);

Conclusion

Le format JSON permet d’échanger facilement des données.

Méthode à retenir :

1
$this->json()

Codes fréquents :

1
2
3
200 OK
400 Erreur de saisie
404 Introuvable
This post is licensed under CC BY 4.0 by the author.