Размещение файла сервис-воркера с CDN/Google Диска

При реализации веб-push-уведомлений мне нужно добавить расположение файла сервис-воркера в свой код JS.

navigator.serviceWorker.register('/service-worker.js')

Могу ли я разместить этот файл сервис-воркера в CDN или на Google Диске?


person Ravikrn    schedule 28.12.2015    source источник
comment
не могли бы вы опубликовать, что вы пробовали до сих пор?   -  person user1140237    schedule 28.12.2015
comment
@user1140237 user1140237, я попытался разместить файл сервис-воркера на Google-диске и добавить путь при регистрации сервис-воркера. Но он показывает ошибку 404, рассматривая только пути, которые являются расширениями root.   -  person Ravikrn    schedule 28.12.2015
comment
Хостинг Google Диска удаляется.   -  person Daniel Herr    schedule 28.12.2015
comment
А как насчет cdn-хостинга? Могу ли я разместить свой сервис-воркер на cdn?   -  person Ravikrn    schedule 28.12.2015


Ответы (1)


Ваш файл JavaScript сервис-воркера, который передается в navigator.serviceWorker.register() не может находиться в другом домене, чем страницы, которыми он управляет. Если ваш сайт обслуживается с https://www.example.com/, вы не можете обслуживать файл JavaScript сервис-воркера с https://www.somecdn.com/. Вы должны убедиться, что все ваши веб-страницы и ваш сервисный рабочий файл обслуживаются из одного и того же домена, хотя не важно, соответствует ли этот единственный домен серверу CDN или чему-то еще.

Кроме того, путь к файлу сценария сервисного работника влияет на максимальный объем контроля сервисного работника, и вам, как правило, необходимо разместить файл сценария сервисного работника на «верхнем уровне» вашего веб-сайта, если вы хотите контролировать все страницы. на сайте. Дополнительную информацию можно найти в этом другом ответе на переполнение стека.

person Jeff Posnick    schedule 29.12.2015