Расширение для браузера, предотвращающее перезагрузку страницы при нажатии «Назад».
За последние пару лет я заметил, что многие веб-сайты теперь полностью обновляют страницу каждый раз, когда вы возвращаетесь на страницу, нажимая кнопку Back. Это очень раздражает, особенно при сотовом или медленном интернет-соединении.
Может ли расширение браузера предотвратить перезагрузку этой страницы при нажатии Back?
Примечание. Я не говорю о принудительной перезагрузке браузера или ОС из-за нехватки памяти. Это упреждающая перезагрузка, которую сам веб-сайт запускает, когда обнаруживает, что страница стала активной или снова получила фокус.
Самый злостный нарушитель — . Если вы нажмете на тему, чтобы прочитать комментарии, а затем нажмите Back, произойдет 5-секундная задержка, поскольку список тем перезагружается, все голоса пересчитываются, все комментарии подсчитываются и т. д. Я не хочу, чтобы что-либо из этого произошло. , я просто хочу быстро вернуться к предыдущему списку тем, который я просматривал.
Проверьте себя на различных сайтах. Нажмите на тему/комментарии, затем нажмите Back.
- Reddithttps://old.reddit.com (необходимо войти в систему)
- https://stackoverflow.com
- https://news.ycombinator.com
Hacker News и Stack Exchange работают довольно быстро. Никакой перезагрузки. Никаких перерасчетов. Просто показывает вам предыдущий список тем.
Reddit ужасно медленный и заставляет полную перезагрузку страницы каждый раз, когда вы нажимаете Back. Другие сайты тоже так делают.
Я ищу расширение браузера для Safari или Chrome, которое может предотвратить перезагрузку всего этого класса страниц на всех веб-сайтах. Какой механизм используют веб-сайты для запуска перезагрузки/обновления и как его можно перехватить и заблокировать?
1 ответ
Заголовки HTTP-ответов для HTML-страниц Reddit выглядят следующим образом:
accept-ranges: bytes
cache-control: private, s-maxage=0, max-age=0, must-revalidate, no-store
Таким образом, веб-сайт просит браузер не кэшировать страницу с помощью флага max-age.
Однако для некоторых элементов страницы, например файлов Javascript, они запрашивают кеширование (на 7 дней, что составляет 604800 секунд).
accept-ranges: bytes
cache-control: max-age=604800
Поэтому большая часть контента должна быть кэширована. Может быть, у вас медленный телефон или интернет-соединение?