Вопрос

Поскольку в настоящее время я занимаюсь разработкой веб-сайта, который просто должен быть способен более или менее безупречно работать в условиях большого стресса и перехода от сценария автоматического тестирования, я бы попробовал простое нажатие и удержание F5 для нескольких -seconds-in-my-favourite-browser, и здесь я обнаружил странное наблюдение в Google Chrome:

Если вы выполните вышеизложенное, Chrome пропускает отправку заголовка If-Modified-Since, и веб-сервер вынужден извлечь страницу, которую вы хотите отобразить, в результате чего код состояния 200 вместо ожидаемого 304.

В IE8 (и, возможно, также в более ранних версиях) эта проблема отсутствует .

Попробуйте эту простую страницу: http://www.w3.org/ Protocols / rfc2616 / rfc2616-sec10.html , а затем внимательно изучите страницу с помощью Fiddler; странно, да?

Мой вопрос это по замыслу или ошибка от Google?

Это было полезно?

Решение

Это может быть проблема с дизайном. Браузеры часто отправляют разные запросы при обновлении; например, попробуйте нажать Ctrl + F5 в IE, и вы увидите, что IE затем делает безусловный HTTP-запрос.

Отправляете ли вы правильные HTTP-директивы кэширования на ваши ответы, чтобы их свежесть не нуждалась в проверке? http://www.fiddler2.com/redir/?id=httpperf

Другие советы

Вы делаете Shift-F5 или Ctrl-F5? Если это так, то может показаться, что это по замыслу . В противном случае это может быть ошибкой.

scroll top