Где работает Service Worker
Вопрос
Разработчик выложил сайт по http://example.ru и не может зарегистрировать Service Worker. В чём причина?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Варианты ответа
- Service Worker требует безопасный контекст: HTTPS или localhostправильный ответ
- Service Worker регистрируется только из Web Worker, а не со страницы
- Service Worker работает только в Chrome, а в других браузерах его нет
- Нужно сначала запросить у пользователя разрешение через
Notification
Разбор
Service Worker может перехватывать весь трафик страницы, поэтому браузеры разрешают его только в безопасном контексте: HTTPS или localhost для разработки. Регистрируют его со страницы через navigator.serviceWorker.register, а не из воркера. Он поддерживается во всех основных браузерах. Разрешение пользователя нужно для push-уведомлений, а не для самой регистрации.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.
Предыдущий вопрос
Web Worker и Service Worker: в чём разница
Следующий вопрос
Scope Service Worker по умолчанию