PREMIER NOUVEAU MOT
Une demande s’appelle une requête.
Lorsque le navigateur demande une page au serveur, les développeurs appellent ce message une requête. Elle contient principalement l’action souhaitée et l’adresse demandée.
GET /books/12GETsignifie simplement : « donne-moi cette information »
/books/12est la partie de l’adresse qui désigne le livre numéro 12
HTTP est le nom des règles communes utilisées par les navigateurs et les serveurs pour se parler. Vous n’avez pas à écrire ces messages à la main : le navigateur le fait pour vous.
La demande traverse plusieurs postes.
Comme une lettre passe par plusieurs mains avant d’arriver au bon service, la requête avance étape par étape. Chaque poste répond à une question simple.
- 1Entrée de l’application
Une demande vient-elle d’arriver ? PHPAML démarre le projet.
- 2Contrôles de sécurité
Cette personne a-t-elle le droit de continuer ?
- 3Route
Quel code sait traiter l’adresse /books/12 ? Une route est simplement une règle qui relie une adresse à une action.
- 4Contrôleur
Que faut-il faire pour obtenir le livre ? Le contrôleur organise le travail.
- 5Données et présentation
Quel est le livre et comment doit-il apparaître ?
- 6Réponse
Le serveur renvoie enfin la page terminée au navigateur.
LES MOTS À CONNAÎTRE
Un petit dictionnaire avant de continuer
- Requête
- La demande envoyée par le navigateur.
- Route
- La règle qui relie une adresse au code chargé de la traiter.
- Contrôleur
- Le code qui organise les actions nécessaires pour répondre.
- Réponse
- Le résultat renvoyé au navigateur : une page, des données ou une erreur.
Décomposons une adresse complète.
http://127.0.0.1:8910/books/12http://hostportpathSur un site public, le nom de domaine remplace généralement 127.0.0.1 et le port n’est pas affiché. Le principe reste identique : l’adresse permet au navigateur de trouver un serveur puis de préciser ce qu’il souhaite.
Une requête peut transporter des informations de trois façons.
/books/12 — le nombre 12 identifie le livre.
/books?author=Ada — pratique pour filtrer ou rechercher.
Un formulaire peut envoyer un nom, un courriel ou un nouveau livre sans les afficher dans l’adresse.
Des informations complémentaires : format accepté, langue, session ou authentification.
Les actions HTTP les plus utiles.
GETPOSTPUTPATCHDELETECes mots décrivent l’intention. Une route associe donc une action et un chemin : GET /books ne signifie pas la même chose que POST /books.
Lire rapidement les codes de réponse.
2xxLe travail a réussi. 200 indique une réponse normale; 201 indique souvent une création réussie.
3xxLe navigateur doit aller ailleurs. 301 est un déplacement permanent; 302 une redirection temporaire.
4xxLa demande ne peut pas être satisfaite : adresse, autorisation, validation ou action incorrecte.
5xxL’application ou le serveur a rencontré une erreur pendant le traitement.
Pourquoi ne pas ouvrir directement un fichier PHP ?
Parce qu’une adresse publique ne doit pas dépendre de l’emplacement physique du code. La route /books/12 peut évoluer sans exposer src/controllers/BookController.php. Le routeur fournit aussi un seul endroit pour contrôler la méthode HTTP, l’authentification et les paramètres.
/src/controllers/book.php?id=12L’URL révèle l’organisation interne et couple le navigateur aux fichiers.
/books/12L’adresse décrit la ressource, tandis que PHPAML choisit le code interne.
Et si quelque chose ne fonctionne pas ?
Le serveur renvoie un nombre appelé code d’état. Ce nombre résume le résultat. Vous avez probablement déjà rencontré 404 sur Internet.
404Adresse introuvableL’application ne connaît pas cette adresse.
405Action refuséeL’adresse existe, mais pas pour l’action demandée.
500Le code a échouéL’application a commencé le travail, puis une erreur s’est produite.
QUESTIONS DE DÉBUTANT
Vous vous demandez peut-être…
Une route est-elle une page ?
Pas exactement. La route est la règle qui décide quel code répond à une adresse. Ce code peut ensuite construire une page ou renvoyer des données.
Pourquoi GET ?
GET indique que le navigateur veut lire une ressource. D’autres actions existent, comme POST pour envoyer de nouvelles informations.
Pourquoi afficher des codes d’erreur ?
Ils indiquent à quel endroit chercher : adresse inconnue, action interdite ou erreur pendant l’exécution.
VÉRIFIEZ VOTRE COMPRÉHENSION
Une route GET /users existe. Que doit répondre une requête POST /users si aucune route POST n’est déclarée ?
Afficher la réponse
405 Method Not Allowed
À VOUS DE JOUER
Classez ces problèmes : /books/12 inconnu, contrôleur qui lance une exception, route accessible seulement en POST.
Voir un indice
Réponses attendues : 404, 500 et 405.
EN RÉSUMÉ
Ce qu’il faut retenir
- public/index.php amorce l’application.
- Les middlewares entourent le traitement.
- Le routeur utilise la méthode et le chemin.
- Response contient toujours le résultat HTTP final.