Post

Symfony – Consommer une API

Symfony – Consommer une API

Cours 37 — Consommer une API

Introduction

Consommer une API consiste à interroger un service externe afin de récupérer des données.

Symfony fournit un composant HTTP Client pour effectuer ces requêtes.


Installer le composant

1
composer require symfony/http-client

Injection du client HTTP

1
use Symfony\Contracts\HttpClient\HttpClientInterface;

Exemple simple

1
2
3
4
5
public function index(
    HttpClientInterface $httpClient
): Response
{
}

Symfony fournit automatiquement le client HTTP.


Envoyer une requête GET

1
2
3
4
$response = $httpClient->request(
    'GET',
    'https://api.exemple.com/patients'
);

Lire la réponse

1
$donnees = $response->toArray();

Exemple complet

1
2
3
4
5
6
$response = $httpClient->request(
    'GET',
    'https://api.exemple.com/patients'
);

$donnees = $response->toArray();

Accéder aux données

1
$nom = $donnees['nom'];

Envoyer des données

1
2
3
4
5
6
7
8
9
$response = $httpClient->request(
    'POST',
    'https://api.exemple.com/patients',
    [
        'json' => [
            'nom' => 'Durand'
        ]
    ]
);

Comprendre le processus

1
2
3
4
5
6
7
8
9
Symfony
↓
Requête HTTP
↓
API distante
↓
Réponse JSON
↓
Traitement

Utilisation fréquente

1
2
3
4
Météo
Paiement
Cartographie
Services externes

Conclusion

Consommer une API permet d’utiliser des services externes.

Éléments à retenir :

1
2
3
4
5
HttpClientInterface

request()

toArray()
This post is licensed under CC BY 4.0 by the author.