Désactiver l'invite «Confirmer la nouvelle soumission du formulaire» sur Google Chrome

19

Je souhaite désactiver les fenêtres contextuelles "Confirmer la nouvelle soumission du formulaire" sur Google Chrome lorsque je fais un rafraîchissement. Cette discussion (très) ancienne reconnaît le problème mais ne fournit pas de correctif.

Y a-t-il quelqu'un qui a une meilleure idée?

Randomblue
la source
5
Téléchargez le code source de Chrome et piratez votre propre version avec toutes les fonctionnalités que vous faites et que vous ne voulez pas.
Moab
Comme JSZ l'a dit dans le fil de discussion auquel Justin a lié, c'est au site de gérer les re-visites (telles que les recherches), pas au navigateur de deviner (de manière impossible) ce qui est ou n'est pas une nouvelle soumission automatisée valide / sûre.
Synetech
from RFC 2616: "Cela permet aux agents utilisateurs de représenter d'autres méthodes, telles que POST, PUT et DELETE, de manière spéciale, afin que l'utilisateur soit informé du fait qu'une action potentiellement dangereuse est demandée."
2014
@Moab Pourquoi si sérieux? : p
delphirules

Réponses:

15

Chrome a introduit cette "fonctionnalité" afin d'éviter aux utilisateurs de dupliquer involontairement des actions POST sur des formulaires, comme acheter deux fois le même article.

Cela a apparemment été corrigé il y a quelque temps en utilisant le -disable-prompt-on-repostparamètre sur l'invocation de Chrome, mais cela a également été brisé dans les versions ultérieures.

Malgré de nombreux rapports de bogues liés à Chrome, qui sont restés ouverts pendant des années (!), Le bogue est toujours là. Apparemment, le module Chrome qui fait avancer / reculer est si mal écrit qu'il est presque impossible de le réparer. Et personne n'ose le réécrire à partir de zéro.

Par conséquent, si vous ne pouvez pas modifier la page contenant l'opération POST, vous n'avez pas de chance et il n'y a pas de solution.

Si vous pouvez modifier la page, vous avez deux solutions:

  1. Utilisez GET au lieu de POST
  2. Utilisez la méthode Post / Redirect / Get avec le code de réponse HTTP 303

Il y a bien sûr la solution d'utiliser un autre navigateur que Chrome (mais cela ne répond pas à la question).

harrymc
la source
Merci. Pourriez-vous s'il vous plaît lier à certains de ces rapports de bogues?
Randomblue
1
Utilisez simplement cette requête Google qui donne plus de 8 000 réponses.
harrymc
2
Techniquement, Chrome n'a pas introduit cette fonctionnalité, elle est présente dans à peu près tous les navigateurs Web depuis des années (au moins une quinzaine).
Synetech
Opera n'a heureusement pas cette erreur.
cweiske