Когда я выполнял перенаправление после отправки формы, которое возвращает вас на страницу, на которой вы находитесь, мой опыт всегда заключался в том, что нажатие на кнопку вашего браузера приведет вас к странице, на которой вы были до страницы, перед отправкой формы.
Например, вы вводите сайт и:
1. (click) GET /home
2. (click) GET /user/view
3. (click) POST /user/save_changes
4. (redirect) GET /user/view
Поведение в Firefox состоит в том, что после отправки формы и перенаправления (# 4), нажав «назад», вы попадете в # 1 (GET / home) из # 4. Но в Chrome нажатие назад после перенаправления приведет вас к # 2 (GET /user/view).
Я не помню, чтобы это было поведением в прошлом ... и, похоже, это происходит только в Chrome. Это происходит как с перенаправлениями 301
, так и 302
.
Есть ли способ избежать этого поведения? Я всегда делал это таким образом, потому что поведение всегда было приемлемым (восходит к # 1 при нажатии после отправки формы). Я сделал это, чтобы никто не щелкнул назад и не получил ужасное сообщение «Вы хотите повторно отправить форму».