Отсюда https://developers.google.com/web/fundamentals/getting-started/primers/service-workersWeb Push - Размещение службы работник
- Если работник службы находится в корня домена, это означает, что сфера сервисного работника будет вся происхождение.
- Но если мы регистрируем файл работник службы в /example/sw.js, то работник службы только увидит принести события для страниц которых URL начинается с/пример/(т.е./пример/стр.1 /,/пример/страница2 /).
Второй пункт упоминается только выборки не будет работать в/(корневой или другой, чем например) если поместить работника службы в/например /.
Но сама подписка (генерация субобъекта) не создается, если рабочий-сервис находится в/пример /, и если веб-страница находится в/(корень или другой, чем пример), который документ явно не объяснить.
Пожалуйста, дайте мне знать, если даже генерация подписки (pushManager.getSubscription) у самого работника службы не произойдет.
PS: Я попробовал его на Chrome 54.0.2840.100 Ubuntu 16.04 LTS
В общем, так как это веб-толчок, я бы поставил работника службы в корне, следуя стилю API уведомлений, который имеет разрешения, относящиеся к домену, а не путь. – collimarco