Spring Boot : écrire le serveur (école d'ingénieur) · Chapitre 3 · Application directe du cours
Trois requêtes refusées
Une API REST · niveau 1 (application)
Énoncé
Pour chacune de ces requêtes de création, donner le statut reçu et dire si notre méthode creer a été appelée : (a) un corps JSON tronqué ; (b) un corps envoyé avec Content-Type: text/plain ; (c) un corps où "prix" vaut "cher".
Corrigé
Aucune des trois n'atteint creer : Spring refuse la requête avant de pouvoir construire son argument.
- (a) JSON tronqué : 400, la conversion échoue (
HttpMessageNotReadableExceptiondans le journal) ; - (b) texte brut : 415, aucun convertisseur ne lit
text/plainvers un record ; - (c) prix « cher » : 400,
"cher"ne se convertit pas endouble.
$ curl -s -X POST localhost:8000/api/livres -H 'Content-Type: application/json' \
-d '{"isbn":"9782956300083","titre":"Test","prix":"cher"}'
{"timestamp":"2026-10-02T21:28:34.069Z","status":400,"error":"Bad Request","path":"/api/livres"}
Dans les trois cas, le corps de la réponse ne dit pas ce qui ne va pas : le chapitre 4 y remédie. Le rapport de tests du projet des corrigés :
[INFO] Tests run: 11, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 3.870 s -- in fr.librairie.ExercicesTest
[INFO] Tests run: 11, Failures: 0, Errors: 0, Skipped: 0
[INFO] BUILD SUCCESS100 % gratuit
La suite du chapitre est sur Adloun
- 10 autres exercices corrigés dans ce chapitre
- Les 2 QCM du chapitre, le premier sans compte
- Le tuteur, qui guide pas à pas sans donner la réponse
Sans compte : le cours et le premier QCM. Exercices et tuteur : inscription gratuite en 30 secondes, sans carte bancaire.