- •Файл манифеста
- •Использование манифеста
- •Помещение манифеста на веб-сервер
- •Обновление файла манифеста
- •Очистка кэша браузера
- •Application Cache api — новые возможности и проблемы
- •Общая схема работы Application Cache
- •Хранилище
- •Подключение файла .Manifest
- •Файл .Manifest
- •Раздел cache
- •Раздел network
- •Раздел fallback
- •Замечания по разделам network и fallback
- •Методы объекта applicationCache
- •События объекта applicationCache
- •Детальная схема работы Application Cache
- •Обновление кэша
- •Скрытая проблема обновления
- •Привязка к домену
- •Работа в offline
- •Возможности и проблемы использования Application Cache
- •И что же мы получаем в итоге?
Очистка кэша браузера
В процессе тестирования автономного приложения часто бывает полезным вручную очистить кэш браузера. Таким образом можно тестировать свежие обновления без необходимости изменять файл манифеста.
В браузере Firefox, чтобы просмотреть объем хранилища, занимаемого автономными приложениями, выполните команды F10 (отображает меню) --- Инструменты --- Настройки, в открывшемся диалоговом окне выберите опцию Дополнительные и перейдите на вкладку Сеть. На этой вкладке можно просматривать объем хранилища, занимаемого каждым автономным приложением и при надобности очистить кэш любого из них, выбрав требуемое приложение и нажав кнопку Удалить. В данном случае имеется только один котированный веб-сайт, в домене localhost (что представляет тестовый сервер на локальном компьютере):
Для просмотра кэшированных приложений в браузере Chrome введите chrome://appcache-internals в строку адреса:
Все браузеры разрешают очистку кэша, но каждый из них подходит к решению этой задачи по-своему. Наиболее полезные в этом отношении браузеры отслеживают объем хранилища, занимаемого каждым автономным приложением. Это позволяет определить, когда кэширование было неудачным, например, веб-сайт приложения не указывается в списке или же объем кэшированных файлов меньше, чем должен быть. Это также позволяет удалять кэшированные файлы для отдельных сайтов, не затрагивая другие.
Application Cache api — новые возможности и проблемы
JavaScript*, HTML*
П
остепенно
концепция стандарта HTML5 становиться
реальностью. Браузеры начинают
поддерживать новые возможности, которых
так не хватало. Но с новыми возможностями
появляются и новые проблемы.
В
данной статье рассматривается Application
Cache API — совокупность функций, обеспечивающих
продвинутое кэширование ресурсов
web-приложения, и с помощью которых можно
просматривать загруженные ранее сайты
без подключения к сети Интернет. Особое
внимание я уделил практическому
использованию и проблемам Application
Cache.
Далее по статье под словами
«кэш» и его производными имеется в виду
Application Cache и работа с ним. Стандартный
кэш браузера обозначается как «стандартный
кэш».
Общая схема работы Application Cache
Механизм работы Application Cache на первый взгляд прост. Когда пользователь первый раз пользуется сайтом, страницы запоминаются в кэше браузера. Затем при последующих посещениях, а также когда соединение с Интернет теряется, используются заранее сохраненные данные в специальном «хранилище». Контроль над кэшированием сайта производится с помощью специального файла, названного manifest. В некоторых статьях используется .apppcache вместо .manifest. В данной статье используется .manifest. Хотя можно использовать и свое название.
Хранилище
«Хранилище» — условное название, используемое в браузерах для обозначения места хранения Application Cache. Механизмы работы Application Cache и стандартного кэша браузера различны, поэтому требуют отдельного размещения. Отличия механизмов работы между двумя видами кэширования следующие:
Данные помещённые в стандартный кэш могут быть автоматически, без команды со стороны пользователя или сервера, удаленны при его заполнении или истечения стока действия, указанного в заголовках файлов. Данные помещённые в хранилище Application Cache могут быть удалены только по команде пользователя или сервера.
В стандартный кэш попадают только файлы, загруженные в процессе просмотра страницы. В Application Cache можно поместить любые файлы, загружаемые с сервера согласно инструкции manifest.
Данные различия оказывают существенное влияние на механизмы кэширования, которые будут подробно рассмотрены в конце статьи.
