Retour à la leçon
Mission

Mission : unifier des réponses d'erreur incohérentes avant un audit client

Remplacer une gestion d'erreurs incohérente par une hiérarchie AppError typée et un middleware d'erreur central unique, puis sécuriser l'arrêt du processus.

Contexte

Un client externe qui consomme l'API se plaint : GET /orders/999 (commande inexistante) renvoie {"message": "not found"}, tandis que POST /orders avec un body invalide renvoie un texte brut "Bad request: items required" sans JSON du tout, et une troisième route laisse fuiter err.stack complet dans la réponse 500 en cas de bug. Aucune route ne suit le même format, ce qui casse le SDK client généré automatiquement à partir d'un format attendu unique.