Ответ 1
Неофициальный ответ
Если предыдущей страницей был GET-запрос, страница обычно выбирается из кеша браузера, если время кеша на странице истекло ( это время истечения устанавливается администраторами веб-страницы), или другой фактор заставляет браузер полагать, что информация не является достаточно свежей.
Если предыдущей страницей был запрос POST, браузер обычно спрашивает вас, хотите ли вы повторно отправить информацию, и страница будет загружена с сервера.
Формальный ответ
В разделе раздела 13 Спецификация протокола HTTP, которые должны реализовывать браузеры.
В частности, в 13.10 говорится, что:
Некоторые HTTP-методы ДОЛЖНЫ вызвать кеш для аннулирования объекта. Это либо субъект, на который ссылается Request-URI, или по местоположению или Заголовки Content-Location (если они есть). Эти методы:
- PUT - DELETE - POST
Другие типы запросов (например, GET) могут быть кэшированы. Прочитайте полную спецификацию, если вы хотите детали gory, но спецификация настроена таким образом, чтобы браузер мог максимально использовать свой кеш.