Mise en place d'une API REST en PHP

315899 vues
05 novembre 2012
Jérémie
rest

Services REST

Bien que les services REST soient très courants, j'ai étonnamment croisé peu de documentation française sur la réalisation d'une API REST. D'où cet article inspiré de cet autre article « Create a RESTFUL SERVICES API » de Srinivas Tamada.
Un service REST permet de mettre à disposition d'autres applications des ressources et non des fonctionnalités. Sa mise en place et son utilisation est donc beaucoup plus simple que SOAP. REST est donc fortement recommandé pour des cas simples où on cherche à effectuer des actions simples sur un contenu, comme tester l'existence d'un élément dans la base de données d'une application, ou le modifier.

API REST (Representational State Transfer) est un style d'architecture web pour la création de services web légers et évolutifs. Elle est basée sur l'utilisation des méthodes HTTP telles que GET, POST, PUT et DELETE pour manipuler les ressources (informations) d'un serveur web.

Une API RESTful fournit une interface de programmation qui permet à des applications de communiquer avec un serveur de manière standardisée, en utilisant les méthodes HTTP pour effectuer des opérations sur les ressources.

L'API REST est considérée comme une architecture de services web efficace et flexible, car elle utilise des protocoles standard pour la communication, est facilement extensible et peut être mise en cache pour améliorer les performances. Elle est également facilement utilisable avec différents langages de programmation et peut être utilisée pour une variété d'applications telles que les réseaux sociaux, les services bancaires en ligne, les systèmes de gestion de contenu, les systèmes de gestion de stocks, les applications mobiles, etc.

Cas d'utilisation :

Les applications 1,2 et 3 peuvent être des applications Web, smartphone, etc. Elles peuvent être écrites en différents langages. Elles doivent juste pouvoir utiliser le protocole http.
En effet une architecture REST repose sur le protocole http, comme expliqué par Gérald Croes dans son blog : On accède à une ressource (par son URI unique) pour procéder à diverses opérations supportées nativement par HTTP.

On peut demander à :

  • Lire une ressource (GET)
  • Modifier une ressource(PUT)
  • Ecrire une ressource(POST)
  • Supprimer une ressource (DELETE)