Возможно, ошибка в истории Chrome - при выполнении PRG и при повторном переходе к той же форме - запись истории не добавляется - PullRequest
7 голосов
/ 28 марта 2012

Странное поведение кнопки возврата происходит только в Chrome.
У меня есть две страницы - Сетка и Форма
Сценарий:
1. При переходе от Сетки к Форме все в порядке -сетка добавляется в историю.
2. Когда форма отправляется на сервер по почте, я использую RedirectToAction для повторного перенаправления (302) в сетку - форма добавляется в историю.
3.При повторном переходе от сетки к форме после перенаправления точка истории, содержащая адрес сетки, не добавляется в историю

Теперь необходимо дважды щелкнутьна кнопку назад, чтобы вернуться к сетке.

если вы повторите все шаги несколько раз и посмотрите стек истории, вы увидите грустный список записей формы без сетки в середине

edit : вот ссылка на страницу, демонстрирующую проблему, откройте ее в Chrome и следуйте инструкциям - см. Ошибку истории Chrome в действии

Единственное«SРаствор "я нашел для этого, помещает некоторую случайную чушь в ссылку на форму, но я действительно ненавижу это.

1 Ответ

3 голосов
/ 02 апреля 2012

Chrome строго использует HTTP 303 См. Другие , в то время как ваше приложение использует 302 Найдено для перенаправлений. См. Связанный отчет об ошибке Chrome здесь: http://code.google.com/p/chromium/issues/detail?id=2801

Вы можете проголосовать за исправление RedirectToAction ASP.Net MVC здесь: http://connect.microsoft.com/VisualStudio/feedback/details/706961/asp-net-mvc-controller-redirecttoaction-method-should-return-http-303-response

...