Par Valentin Brosseau / @c4software
Vos contrôleurs retournent des pages HTML.
Question : et si le client n'était pas un navigateur ?
Aucun d'eux ne veut de votre HTML.
Le serveur ne renvoie que la donnée, le client s'occupe de l'affichage.
┌→ Site web
API (JSON) ─┼→ Application mobile
└→ N'importe quel clientUne seule API, autant de clients que vous voulez.
{ "nom": "Clavier", "prix": 49.90 }C'est le format standard des API du web.
function liste() {
return response()->json(Produit::all());
}La route va dans routes/api.php. C'est tout : votre première API.
| Verbe | Action |
|---|---|
GET |
Lire |
POST |
Créer |
PUT |
Modifier |
DELETE |
Supprimer |
L'URL désigne la ressource, le verbe dit quoi en faire.
Un GET, le navigateur sait faire.
Mais comment tester un POST ou un DELETE sans formulaire ?
Un outil pour construire des requêtes HTTP à la main : verbe, URL, corps JSON.
Vous construisez votre « cahier de tests » et rejouez chaque requête à volonté. Un standard en entreprise.
Commande::where('id_client', $id)->with('produit')->get();Le with() embarque le produit dans le JSON de chaque commande.
Le client mobile reçoit tout en une seule requête.
Votre API est en ligne.
Qui peut l'appeler ?
Une API sans protection est publique. La solution : le token.
Authorization: Bearer …).C'est le rôle de Sanctum, le bonus du TP.
response()->json() + routes/api.php : la base dans Laravel.Place au TP 🚀