Non, envoyer un lien menant sur un formulaire de confirmation.
Total: deux clics
leflos5 a écrit :
Tout aussi stupide juste pour se pignoler sur un concept général, que de savoir faire une exception quand les limites de la théorie sont atteintes
[...]
Surtout que c'est vraiment du chipotage ton truc 
|
Pas de bol, non, l'idempotence du GET devient capitale et fondamentale quand on sait qu'il peut être caché et préfeché
Exemple: Il y a quelques temps, Google a sorti son Google Accelerator. Tout d'un coup, plein de sites ont pêté, plein d'utilisateurs se sont touvés déloggés en permanence, ou avec leurs comptes supprimés, ou avec plein d'autres conneries.
Raisons? Les changements d'états du système étaient effectués via requêtes GET, Google Accelerator préfecthe tous les liens (donc toutes les requêtes GET) pour accélérer la navigation, donc il "clique" sur tous les liens, y compris ceux changeant l'état du système
Les sites utilisant correctement les verbes HTTP n'ont eu aucun problème.
BTW Fasterfox utilise également le préfetch pour accélérer la navigation, il peut donc avoir le même effet.
Par ailleurs, les navigateurs et les proxys sont autorisés à cacher le résultat d'une requête GET, pas celui d'une requête POST, donc une requête voulant changer l'état d'un site, si elle est faite en GET, peut parfaitement ne jamais arriver jusqu'au serveur, sa réponse étant sortie directement du cache d'un proxy quelconque sur le chemin ![[:dawak] [:dawak]](https://forum-images.hardware.fr/images/perso/dawak.gif)