HTTP
409
La requête est en conflit avec l'état actuel de la ressource
Ce qui se passe réellement
La requête ne peut pas être traitée car elle entre en conflit avec l'état actuel de la ressource sur le serveur. Exemples : tenter de créer une ressource qui existe déjà (email/username en double), modifier une ressource qui a été modifiée par un autre client entre-temps (conflit d'édition concurrente), ou supprimer une ressource qui a des dépendances.
Solutions
- 1Lire le corps de la réponse — il devrait décrire le conflit exact.
- 2Pour les duplicates : vérifier si la ressource existe déjà et utiliser PUT/PATCH au lieu de POST.
- 3Pour les conflits d'édition : récupérer la dernière version de la ressource (GET), fusionner les changements, et renvoyer.
- 4Implémenter le verrouillage optimiste avec l'en-tête If-Match et les ETags.
- 5Si c'est une suppression : traiter d'abord les dépendances.