HTML5 представляет технологию приложений, что означает, что веб -приложения можно кэшировать и использовать без сети.
Три преимущества, предоставленные кешем приложений:
① Офлайн просмотр
② Увеличьте скорость дохода лица на странице
③ Снижение давления сервера
И основной браузер поддерживается поддержкой кеша приложений.
Офлайн -технология храненияHTML5 предлагает две основные технологии хранения в автономном режиме: LocalStorage и кэш приложений, каждая из которых со своими сценариями приложений;
После практики мы считаем, что LocalStorage должен хранить некоторые некритические данные AJAX и делать торт;
Кэш применения все еще используется для хранения статических ресурсов, и он все еще является сухой глазурью;
И файлы cookie могут сохранить только небольшой абзац (4096 байтов); Сделано файлом cookie.
Следовательно, сценарий приложения кеша приложения отличается, поэтому использование не является согласованным.
Кэш приложения введениеКэш приложения использует два аспекта:
① Сервер должен сохранить манифестный список
② В браузере есть только одна простая настройка
<html manifest = demo.appcache>
Чтобы объяснить пример:
Кэш manifestcache:# Список кэша style1.css1.jpg01.jshttp: //localhost/applicationcache/02.jshttp: //localhost/application/zepto.jsnetw ork:# 4.jpgfallback:# после доступа cache, the, the the Ресурс запасного доступа, первым является источником доступа, вторым является замена файла*.html /offline.html2.jpg/3.jpg
Прежде всего, я сообщил о ошибке здесь:
Событие ошибки кэша приложения: ошибка Manifest Fetch (404)
Причина этой ошибки заключается в том, что манифестный файл должен настроить правильный тип MIME, то есть текстовый/манифест. Должен быть настроен на веб -сервере, разные серверы разные
/ApplicationCache 01.js 02.js 1.jpg 2.jpg 3.jpg 4.jpg demo.appcache index.html style1.css style2.css web.config zepto.js
Таким образом, вы можете применить его в автономном режиме.
Здесь стоит отметить.
Манифестные файлы можно разделить на три части:
Кэш Манифест -Файл, указанный в этом заголовке, будет кэш после первой загрузки
Сеть -Файлы, перечисленные в этом заголовке, должны быть подключены к серверу без кэширования
Запасная сторона -файлы, перечисленные в этом заголовке
Как показано на рисунке, HTML5 определяет несколько точек событий, но мы, как правило, не используем JS для работы.
ИзмерениеОграничение размера кэша приложения объединяется на уровне 5 м, я прохожу тест здесь:
Как показано, два файла CSS все еще превышают 5 м в настоящее время
Документ был загружен из кэша приложения с манифестом http: //localhost/applicationcache/demo.appcacheindex.html: 1 Проверка кэша приложений dex.html: 6 get http: //localhost/applicationCache/style2.css net :: err_fairdindex.html. 1 Кэш приложения noupdate eventIndex.html: 11 get http: //localhost/applicationcache/2.jpg net :: err_fairdindex.html: 12 getp: // localhost/applycache/3.jpg net :: err_faird
Как показано, Style2 больше не может кэшировать, какие проблемы это вызовут?
Например, канал A поддерживает свой собственный кэш приложения, а канал B также поддерживает себя.
Рекомендуется, чтобы кеш приложений хранить общественные ресурсы, не хранить бизнес -ресурсы
Некоторые проблемыС точки зрения механизма обновления при обновлении манифеста в первый раз, поскольку загрузка страницы началась или даже завершена, обновление кэша не завершено, а браузер все еще будет использовать истекшие ресурсы; Обновляется. В настоящее время событие Window.ReLoad было выполнено в событии обновления.
Window.applicationcache.addeventlistener (uppareatery, function () {window.location.reload ()});
Из приведенного выше примера можно известно, что кэш является не просто файлом определения, таким как приложение, время/время в приведенном выше примере, данные index.html в качестве сопоставления сохраняются по умолчанию и содержит демо. Файл AppCache.
Например, мы вносим изменение здесь:
<html manifest = demo.appcache> => <html manifest = demo1.appcache>
В настоящее время, если вы не делаете обновления demo.appcache, кэш не будет обновлен, поскольку index.html кэшируется, а обнаружение все еще остается исходным списком манифестов
Каждая страница равномерно управляет своим собственным списком манифестов, что означает, что страница A настроена с помощью common.js, а страница B также настроена с помощью common.js, что означает, что после обновления страницы, если манифест на странице B не будет изменен, страница B все еще читается.
СуммироватьС точки зрения доступности и простоты использования, кэш приложений стоит использовать, но лучше всего кэш для статических ресурсов.