Quand devrions-nous utiliser PUT et quand devrions-nous utiliser POST?
Les méthodes HTTP POST et PUT ne sont pas l’équivalent HTTP de create et update du CRUD. Ils ont tous deux un but différent. Il est tout à fait possible, valide et même préféré dans certaines occasions, d’utiliser PUT pour créer des ressources, ou d’utiliser POST pour mettre à jour des ressources.
Utilisez PUT lorsque vous pouvez mettre à jour complètement une ressource via une ressource spécifique. Par exemple, si vous savez qu’un article réside à http://example.org/article/1234, vous pouvez PLACER une nouvelle représentation de ressource de cet article directement via un PUT sur cette URL.
Si vous ne connaissez pas l’emplacement réel de la ressource, par exemple, lorsque vous ajoutez un nouvel article, mais que vous n’avez aucune idée de l’endroit où le stocker, vous pouvez le POSTER sur une URL et laisser le serveur décider de l’URL réelle.
Dès que vous connaissez le nouvel emplacement de la ressource, vous pouvez utiliser PUT again pour faire des mises à jour de l’article agrafeuse bleue. Mais comme dit précédemment: vous POUVEZ également ajouter de nouvelles ressources via PUT. L’exemple suivant est parfaitement valide si votre API fournit cette fonctionnalité :