Guzzle est un client http dévéloppé en php permettant la communication d’une application et de web services restful. Pour rappel, un web service est une technologie qui permet la communication entre applications à distance de manière complètement indépendante et pour ce faire l’utilisation d’un client http tel que Guzzle est indispensable !
Installation de Guzzle
Via composer :
Utilisation de Guzzle
L’utilisation de Guzzle requiert au moins la version 5.4 de php. Depuis la version 4 de Guzzle, celui-ci n’utilise plus Curl contrairement aux anciennes versions.
Méthode Get
La méthode Get permet de récupérer des infos.
Imaginons que nous avons une API REST fournissant la liste des livres disponibles d’une bibliothèque.
Voyons en détails ce que contient l’objet $response.
getStatusCode() : Cette méthode renvoie le statut de la requête sous forme de code, voici les plus courants :
- 200 : tout s’est bien passé.
- 401 : Si l’application requiert une authentification, ce code indique que l’utilisateur n’est pas identifié
- 403 : Accès refusé
- 404 : La ressource est inexistante
- 500 : Une erreur serveur
getBody() :
Cette méthode retourne le corps de la réponse (json, xml, html)
Il existe d’autres méthodes que nous ne verrons pas, je vous laisse les découvrir sur la documentation officielle.
Méthode Post
A chaque arrivée de nouveaux livres, nous devons stocker les informations de chaque nouveau livre.
Les infos suivantes caractérisent un livre : titre, auteur, genre, date de publication.
Supposons que ces infos sont saisies via un formulaire, voici le code pour envoyer ces informations à notre web service afin de stocker ce nouveau livre :
Voici les codes de retours les plus courants :
- 201 : ressource créée avec succès.
- 403 : Accès refusé
- 500 : Une erreur serveur
Méthode Patch
Cette méthode permet de mettre à jour les informations d’un livre de manière partielle comme par exemple uniquement le titre :
Méhode Put
Méthode similaire à Patch mais de manière complète, c’est-à-dire que nous devons envoyer toutes les infos qui caractèrisent un livre :
Méhode Delete
Méthode qui permet de supprimer un livre :
Conclusion
Guzzle est vraiment simple à utiliser contrairement à Curl qui avait une déclaration assez verbeuse sur plusieurs lignes. Guzzle est vraiment un client http a adopter et à utiliser pour toutes vos applications.
Pas mal pour les astuces avec Guzzle, je voulais m’y mettre justement ca tombe bien 🙂