Я использую HTML 5 истории API для сохранения состояния, когда происходят запросы AJAX, и я предоставляю полный HTML-контент, если пользовательский запрос на той же странице без запроса AJAX.
Функция «Повторно открыть последнюю закрытую вкладку» браузера обеспечивает доставку содержимого последнего запроса AJAX без обращения к серверу. Если бы браузер запрашивал, не принося содержимое последнего запроса, то все работало бы без проблем. Но браузер просто показывает содержимое последнего запроса ajax.
Я испытал это на Chrome 17, Firefox 10. (Я не пробовал на ie9, потому что у него нет API истории поддержки)
Какое решение этой проблемы известно?
Edit: эти запросы AJAX просто "получить" запрос к серверу.
действительно невозможно продемонстрировать это в jsfiddle.net по нескольким причинам. Вы можете продемонстрировать это на своем локальном хосте, как показано ниже.
Сделайте запрос "get" на сервер и извлеките объекты json, затем вставьте этот URL в историю API, как показано ниже.
history.pushState(null,null,url);
Затем закройте эту вкладку и нажмите кнопку «Открыть последнюю закрытую вкладку» в своем браузере. Что ты видишь ? Json тело ответа? Браузер показывает это без запроса к серверу, верно?