18

Я хочу отключить всплывающие окна "Подтверждение повторной отправки формы" в Google Chrome при обновлении. Это (очень) старое обсуждение признает проблему, но не дает решения.

Есть кто-то с лучшей идеей?

1 ответ1

15

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

Это, по-видимому, было исправлено некоторое время назад с помощью параметра -disable-prompt-on-repost при вызове Chrome, но это также было нарушено в более поздних версиях.

Несмотря на многочисленные сообщения об ошибках в Chrome, которые оставались открытыми в течение многих лет (!), Ошибка все еще существует. По-видимому, модуль Chrome, который выполняет возврат / пересылку, написан так плохо, что исправить его практически невозможно. И никто не смеет переписать это с нуля.

Поэтому, если вы не можете изменить страницу, содержащую операцию POST, вам не повезло, и решения не существует.

Если вы можете изменить страницу, то у вас есть два решения:

  1. Используйте GET вместо POST
  2. Используйте метод Post/Redirect/Get с кодом ответа HTTP 303

Конечно, есть решение использовать другой браузер, кроме Chrome (но это не отвечает на вопрос).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .