REST API niveau senior avec Spring Boot et OpenAPI
8 novembre 2024
9 min de lecture
Une API qui répond avec les bons codes HTTP et documentée avec springdoc-openapi, c'est le strict minimum. Ce qui fait la différence, c'est la gestion des erreurs et le versioning.
Un format d'erreur unique
{
"code": "ORDER_NOT_FOUND",
"message": "La commande 4821 n'existe pas",
"traceId": "a1b2c3d4"
}Chaque exception métier passe par un @ControllerAdvice qui renvoie ce format. Le front n'a plus jamais à parser un message d'erreur en texte libre.
Versionner dès le premier endpoint
Même si tu penses ne jamais avoir besoin d'une v2, préfixe tes routes avec /api/v1 dès le départ. Le jour où tu dois faire un breaking change, tu seras content de l'avoir fait.