Опасности использования предварительной выборки HTML5? - PullRequest
6 голосов
/ 15 ноября 2011

Хорошо, так что это не большое беспокойство, поскольку поддерживается только несколькими браузерами:

  • Mozilla Firefox: поддерживается
  • Google Chrome: поддерживается с версии 13(Используйте альтернативный синтаксис)
  • Safari: в настоящее время не поддерживается Интернет
  • Explorer: в настоящее время не поддерживается

Однако предварительная выборка заставляет меня дергаться.Если пользователь заходит на вашу страницу и переходит на другой сайт, заплатили ли вы за пропускную способность, по которой он посещает ваши ссылки предварительной выборки?

Нет ли риска, что разработчики будут предварительно выбирать каждую ссылку на странице, что, в свою очередь, сделает веб-сайт более медленным для пользователя?

Похоже, это может изменить аналитику.Будут ли люди навязывать пользователям просмотр страниц с помощью предварительной выборки?

Безопасность, вы не будете знать, какие страницы предварительно выбираются.Может ли он выполнять предварительную загрузку вредоносных файлов?

Будет ли эта предварительная загрузка болезненной для мобильных пользователей с ограниченным использованием?

Ответы [ 2 ]

8 голосов
/ 15 ноября 2011

Я не могу назвать себя экспертом по этому вопросу, но я могу сделать следующие замечания:

  1. Предварительную выборку следует рассматривать только в тех случаях, когда известно, что она полезна. Включение предварительной выборки для всего будет просто глупо. По сути, это баланс между нагрузкой на сервер и пользовательским опытом.

  2. Я не изучал спецификацию предварительной выборки HTML5, но я хотел бы предположить, что они указали заголовок, в котором говорится, что «этот запрос выполняется как часть предварительной выборки», который можно использовать для решения проблемы аналитики, т.е. если это предварительная выборка, не включайте ее в статистику аналитики ".

  3. С точки зрения безопасности можно ожидать, что предварительная выборка будет следовать тем же междоменным правилам, что и Ajax. Это уменьшит вероятность возникновения проблем с XSS.

  4. Мобильные браузеры, поддерживающие предварительную выборку HTML5, должны быть достаточно умными, чтобы включить его при использовании WiFi и отключить при использовании потенциально дорогих или медленных форм сетевого подключения, например, 2G / 3G.

Как я уже говорил, я не могу гарантировать ни одну из вышеперечисленных вещей, но (как и в случае с любой другой технологией) это пример лучших практик. Вы не будете использовать Cache-Control для принудительного кэширования каждой страницы вашего сайта в течение года. Также вы не ожидаете, что браузер удовлетворит междоменный запрос Ajax. Надеемся, что те же соображения были / будут приняты для предварительной выборки.

1 голос
/ 26 августа 2015

Чтобы ответить на вопрос об аналитике и статистике, в спецификации есть следующее:

Для обеспечения совместимости и повышения успешности запросов на предварительный рендеринг целевая страница можетиспользуйте [PAGE-VISIBILITY], чтобы определить состояние видимости страницы при ее визуализации и реализовать соответствующую логику, чтобы избежать действий, которые могут привести к тому, что предварительный рендеринг будет отменен (например, неидемпотентные запросы), или нежелательные побочные эффекты будутсрабатывает (например, маяки аналитики запускаются до отображения страницы).

...