Відключіть підказку "Підтвердити повторну подачу форми" в Google Chrome


19

Я хотів би вимкнути спливаючі вікна "Підтвердити повторну форму" в Google Chrome, коли я оновлюю. Ця (дуже) стара дискусія визнає проблему, але не дає виправлення.

Хтось там з кращою ідеєю?


5
Завантажте вихідний код Chrome і злому свою власну версію з усіма функціями, які ви робите та не хочете.
Моаб

Як сказав JSZ у дискусійній темі, на яку посилався Джастін, веб-сайт повинен здійснювати повторні відвідування (наприклад, пошукові запити), а не браузер (неможливо) здогадатися, що є чи не є дійсним / безпечним автоматизованим повторним поданням.
Synetech

від RFC 2616: "Це дозволяє користувачам-агентам представляти інші методи, такі як POST, PUT та DELETE, спеціальним чином, щоб користувач ознайомився з тим, що вимагається можлива небезпечна дія".
хакре

@Moab Чому так серйозно? : p
дельфірули

Відповіді:


15

Chrome ввів цю "функцію", щоб уникнути ненавмисного дублювання дій POST у формах, таких як двічі купувати одну і ту ж статтю.

Це, мабуть, було виправлено деякий час тому, використовуючи -disable-prompt-on-repostпараметр виклику Chrome, але це також було порушено в пізніших версіях.

Незважаючи на численні відповідні повідомлення про помилки в Chrome, які залишалися відкритими протягом багатьох років (!), Помилка все ще є. Мабуть, модуль Chrome, який робить назад / вперед, написаний настільки погано, що виправити майже неможливо. І ніхто не наважується переписати це з нуля.

Тому, якщо ви не можете змінити сторінку, що містить операцію POST, вам не пощастить, і рішення не існує.

Якщо ви можете змінити сторінку, то у вас є два рішення:

  1. Використовуйте GET замість POST
  2. Використовуйте метод " Опублікувати / перенаправити / отримати" з кодом відповіді HTTP 303

Звичайно, існує рішення використання іншого браузера, ніж Chrome (але це не відповідає на питання).


Спасибі. Чи можете ви надати посилання на деякі з цих звітів про помилки?
Randomblue

1
Просто використовуйте цей запит google, який дає більше 8000 відповідей.
harrymc

2
У технічному відношенні Chrome не запровадив цю функцію, вона вже майже рік присутня у всіх веб-браузерах ( принаймні 15 або більше).
Synetech

Опера на щастя не має такої невдачі.
cweiske
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.