HTML5 AppCache: Может ли кто-нибудь объяснить назначение раздела NETWORK в файле манифеста?

Я просмотрел html5rocks, документ для разработчиков Mozilla. Эти определения очень сбивают с толку. Кто-нибудь может объяснить это простым языком?

Я не уверен, зачем нам вообще нужен раздел NETWORK в файле манифеста appcache. Я думаю, это все равно, что не иметь записи в разделе КЭШ.

СЕТЕВОЙ Mozilla:

Файлы, перечисленные под заголовком раздела NETWORK: в файле манифеста кэша, являются ресурсами белого списка, которым требуется подключение к серверу. Все запросы к таким ресурсам обходят кеш, даже если пользователь не в сети. Подстановочный знак * можно использовать один раз. Большинству сайтов требуется *.

СЕТЕВОЙ HTML5Rocks:

Файлы, перечисленные в этом разделе, могут поступать из сети, если их нет в кэше, в противном случае сеть не используется, даже если пользователь находится в сети. Здесь вы можете занести в белый список определенные URL-адреса или просто "", что разрешает все URL-адреса. Большинству сайтов требуется "".


person Darshan    schedule 18.04.2015    source источник


Ответы (1)


NETWORK: - это ресурсы, которые требуют, чтобы пользователь был в сети.

Из http://www.html5rocks.com/en/tutorials/appcache/beginner/

СЕТЬ:

Файлы, перечисленные в этом разделе, могут поступать из сети, если их нет в кеше, в противном случае сеть не используется, даже если пользователь находится в сети. Здесь вы можете занести в белый список определенные URL-адреса или просто *, что разрешает все URL-адреса. Большинству сайтов требуется *.

Общая практика заключается в том, чтобы определить, какие ресурсы следует кэшировать, используя раздел CACHE, а затем использовать раздел NETWORK с подстановочным знаком *, чтобы по умолчанию все другие ресурсы требовали, чтобы пользователь был в сети.

Пример:

 CACHE:
 # These resources will be downloaded once to be cached  on the client.
 # After they are cached, even if the user has a network connection,
 # they will not re-download these resources, but instead use their local
 # cached copies instead.

 /favicon.ico
 /index.html
 /images/banner.html

 # This section will explicitly tell the client "every other resource"
 # requires a network connection.
 NETWORK:
 *

Так зачем вам явно сообщать клиенту, что для всех остальных ресурсов требуется сетевое соединение?

http://alistapart.com/article/application-cache-is-a-douchebag#section7 Gotcha # 5 это объяснит.

Если вы кешируете index.html, но не cat.jpg, это изображение не будет отображаться в index.html, даже если вы подключены к Интернету.

И вы можете увидеть их демонстрацию здесь: http://appcache-demo.s3-website-us-east-1.amazonaws.com/without-network/

person Norman Breau    schedule 18.04.2015