Лучший подход на сегодняшний день для автономных веб-приложений

Я пытаюсь создать веб-приложение, которое иногда должно работать в автономном режиме. До сих пор стандартным подходом было использование кэша приложений браузера. Однако похоже, что кэш приложений устарел и в будущем будет удален из браузеров (см. https://developer.mozilla.org/en-US/docs/Web/HTML/Using_the_application_cache). Рекомендуется использовать Service Workers. Однако в настоящее время Service Workers полностью не поддерживаются во всех браузерах.

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


person Luis Antunes    schedule 16.10.2015    source источник
comment
Взгляните на dexie.org.   -  person Coz    schedule 16.10.2015
comment
Рассмотрите возможность использования полифилла github.com/coonsta/cache-polyfill.   -  person Aron    schedule 16.10.2015
comment
Этот полифилл реализует несколько методов Cache Storage API, недоступных в Google Chrome. Это не полифилл для сервисных работников в целом или для Cache Storage API в целом.   -  person Jeff Posnick    schedule 16.10.2015


Ответы (1)


Вы можете использовать Service Workers и AppCache в одном и том же веб-приложении. Что происходит в таком случае, так это то, что браузеры, которые не поддерживают Service Workers, будут использовать AppCache, а те, которые поддерживают, будут игнорировать AppCache и позволят Service Worker взять на себя управление.

Источник: https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API#compat-mobile

Проблема с Chrome: https://crbug.com/410665

Лично я бы не стал заморачиваться с AppCache, если автономный режим не является основной частью приложения.

person Daniel Herr    schedule 16.10.2015
comment
Или абстрагируйте это с помощью Polyfill. - person Aron; 19.10.2015