Desative o prompt "Confirmar reenvio de formulário" no Google Chrome

19

Gostaria de desativar os pop-ups "Confirmar reenvio de formulário" no Google Chrome quando fizer uma atualização. Essa discussão (muito) antiga reconhece o problema, mas não fornece uma correção.

Existe alguém lá fora com uma ideia melhor?

Randomblue
fonte
5
Faça o download do código-fonte do Chrome e crie sua própria versão com todos os recursos que você deseja e não deseja.
Moab
Como JSZ disse no tópico de discussão ao qual Justin se vinculou, cabe ao site lidar com re-visitas (como pesquisas), não com o navegador (impossivelmente) adivinhar o que é ou não um reenvio automático válido / seguro.
Synetech
da RFC 2616: "Isso permite que os agentes representem outros métodos, como POST, PUT e DELETE, de uma maneira especial, para que o usuário fique ciente do fato de que uma ação possivelmente insegura está sendo solicitada".
hakre
@Moab Por que tão sério? : p
delphirules 16/03/19

Respostas:

15

O Chrome introduziu esse "recurso" para evitar que os usuários duplicem involuntariamente as ações do POST nos formulários, como comprar o mesmo artigo duas vezes.

Aparentemente, isso foi corrigido há algum tempo usando o -disable-prompt-on-repostparâmetro na invocação do Chrome, mas também foi quebrado nas versões posteriores.

Apesar de vários relatórios de erros relacionados ao Chrome, que permaneceram abertos por anos (!), O bug ainda está lá. Aparentemente, o módulo Chrome que faz o back / forward é gravado tão mal que é quase impossível corrigi-lo. E ninguém ousa reescrevê-lo do zero.

Portanto, se você não puder modificar a página que contém a operação POST, ficará sem sorte e não haverá solução.

Se você pode modificar a página, você tem duas soluções:

  1. Use GET em vez de POST
  2. Use o método Post / Redirect / Get com o código de resposta HTTP 303

Obviamente, existe a solução de usar outro navegador que não o Chrome (mas isso não responde à pergunta).

harrymc
fonte
Obrigado. Você poderia fazer o link para alguns desses relatórios de erros?
Randomblue
11
Basta usar esta consulta do Google que fornece mais de 8000 respostas.
harrymc
2
Tecnicamente, o Chrome não introduziu esse recurso, ele está presente em praticamente todos os navegadores da web há anos (pelo menos 15 ou mais).
Synetech
Felizmente, o Opera não possui esse recurso inadequado.
Cwiske