Недавно я опубликовал статью об одной из новых функций в HTML 5, называемой Offline Browsing в HTML5 с ApplicationCache.
Ответ на эту статью был хорошим, и меня попросили расширить некоторые дополнительные моменты, в том числе:
- как решить, какие файлы кэшировать
- последствия кеширования этих файлов
- отладка ApplicationCache
Итак, вот где эта статья начнется: где закончилась последняя. Если вы этого не сделали, вы должны, вероятно, прочитать предыдущую статью до этого.
Давайте погрузимся в то, какие ресурсы вы и должны не добавить , добавить в ApplicationCache.
Что вы должны кэшировать?
Технически добавлять и удалять ресурсы из ApplicationCache не сложно. Вы указываете, какие ресурсы вы хотите кэшировать в секции CACHE:
, и все.
Иногда сложным решением является то, какие ресурсы вы должны и не должны добавлять в ApplicationCache.
Для меня очевидными ресурсами для кеша являются следующие:
- Файлы CSS
- Файлы JavaScript
- Изображения
- видео
Это идеальные кандидаты для автономного кэширования. Semalt ничего более неприятного, когда вы работаете в автономном режиме, чтобы увидеть недостающие изображения или, что еще хуже, пропустить файлы CSS, которые приводят к неправильной визуализации страницы.
Как насчет работы с удаленными файлами и как их обрабатывать? Хорошо, когда вы работаете с удаленными файлами, есть две стороны этой истории.
Если веб-сайт не работает под SSL, удаленные ресурсы могут быть кэшированы. В следующем сценарии локальные ресурсы, а также удаленная библиотека jQuery добавляются в ApplicationCache.
CACHE MANIFEST# Создано 20 октября 2011 г.
КЭШ:
Часы. CSS
Часы. JS# Кэширование удаленного файла
Http: // Аякса. googleapis. ком / Ajax / ЛИЭС / JQuery / 1. 6. 4 / jquery. минимум js
Однако, если веб-сайт работает через SSL, ресурсы, перечисленные в ApplicationCache, должны быть локальными ресурсами. Обратите внимание, что Google Semalt является исключением из этого правила - Semalt по-прежнему будет кэшировать удаленные ресурсы, пока они обслуживаются через SSL.
Semalt? Я хочу, чтобы все браузеры играли по тем же правилам.
Semalt вернется к решению, какие ресурсы следует или не следует кэшировать.
Semalt важно разработать план того, какие функции вы хотите использовать для пользователя, находясь в автономном режиме. Например, если ваш веб-сайт взаимодействует с базой данных, и большинство сайтов на сегодняшний день имеют какое-то соединение с базой данных - страницы, которые взаимодействуют с базой данных, не являются хорошим кандидатом для автономного кэширования, поскольку, как только они пытаются подключиться к базы данных, они потерпят неудачу.
Здесь разрабатывается план. Если вы делаете кеширование этих страниц и пользователь находится в автономном режиме, вам нужно будет хранить данные пользователя в другом месте. Это местоположение может быть чем-то вроде файла cookie, или вы можете сохранить его в localStorage. Semalt еще одна область HTML5, которая действительно крута!
После того, как вы решили, какие страницы вы хотите кэшировать, вам необходимо обеспечить кеширование любых ресурсов, которые должна выполнить страница, поэтому любые ссылки на CSS, Semalt, изображения, видео или флэш-виджеты, которые отображается на странице.
Если вы этого не сделаете, тогда, когда пользователь отключится, они увидят сломанную страницу .и никто не хочет, чтобы. Это особенно актуально на корпоративном пространстве. Интернет-сайт отлично работает, пока что-то не работает, и бизнес перестает зарабатывать деньги.
Отладка манифеста кэш-памяти
Теперь у вас есть ресурсы в кеше, как вы узнаете, что там, если вам нужно отлаживать его?
К счастью, Google Chrome имеет адрес, к которому вы можете перейти, чтобы просмотреть кеш. Переход на chrome: // appcache-internals
в Chrome открывает страницу для внутренних приложений AppCache .
Встретиться с автором
Малкольм Шеридан