2016-04-28 3 views
15

Я читаю служебного работника для автономного кэширования, аналогичного кешированию браузера. Тогда зачем предпочесть сервис-работнику для этого кэширования. Даже кеширование браузера проверяет файл, который был изменен или нет, а затем служит в кеше, тогда как сервисный работник мы обрабатываем одно и то же из нашего кода. Но по умолчанию браузер имеет эту функцию, поэтому почему бы предпочесть работника службы?Зачем использовать служебного работника для кеширования, когда кеш браузера обрабатывает кеширование?

ответ

9

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

Однако, если кеш браузера обрабатывает ваши потребности, вы не обязаны использовать сервис-работников.

Они также используются для таких вещей, как push-уведомления.

Документация: https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API, https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API/Using_Service_Workers

+0

Я второй «полный контроль над сетевыми запросами». Работники службы могут делать такие вещи, как манипулировать заголовками и одним ресурсом с другим (например, в автономном режиме), который кеш браузера не может сделать. Если вам нужен только стандартный кеш браузера, нет никаких причин для его повторного внедрения в качестве сервисного работника - это не будет более быстрым или простым в использовании. – mjs

1

Я хотел бы поделиться те моменты, которые я наблюдал во время прохождения службы работников документации и реализовали его.

  1. Кэш-браузер отличается, поскольку сервисный рабочий поддерживает автономный кеш, webapp будет обращаться к кешированному контенту, даже если сеть недоступна.
  2. Работник службы даст уроки.
  3. Сервисный рабочий не может изменять содержимое DOM, но при этом он может обслуживать страницы в пределах своей области. С помощью таких событий, как postMessage, страница может быть доступна, а DOM можно изменить.
  4. Служебный работник не требует вмешательства пользователя или веб-страницы. Он работает в фоновом режиме.
+0

«Служебный работник даст родной опыт». Что ты хочешь этим сказать? – Monsignor

+0

Собственный опыт обеспечивает богатый опыт работы в автономном режиме, периодические фоновые синхронизации, push-уведомления – vbharath