Я внедрил сервисного работника с помощью основного веб-приложения .net. приложение представляет собой одну страницу и загружает другие страницы с помощью функции загрузки jquery.
На главной странице есть кэш, в котором есть все ресурсы, необходимые для работы приложения в автономном режиме.
Пока все хорошо, объем работника установлен на / level. Все работает, пока я не заметил, что скрипт, который находится на динамически загруженной странице или в частичном представлении, не обслуживается работником, хотя он находится в кеше. Сервисный работник обслуживает их на главной странице.
Это создает впечатление, что независимо от объема работника службы, он не будет обслуживать кэш на динамически загруженных частичных страницах, а только на странице, на которой он активирован.
Как сделать так, чтобы главная страница обслуживала кеш на этих динамически загружаемых частичных представлениях? Как сервисный работник решил, где обслуживать ресурс из кеша? Если область видимости установлена как root, то почему бы не обслуживать скрипт?
Я прочитал так много документов об этом, но нигде не читал, что независимо от объема работника сервиса, он будет отображаться только на той странице, на которой он активирован, независимо от того, загружаете ли вы страницу динамически без реальной навигации по страницам.
EDIT:
Нашел это. Вероятно, это сэкономит кому-то время и головную боль. Частичная загрузка страницы осуществляется через функцию загрузки jquery, которая должна синхронно анализировать html и сценарий, а выборка не перехватывает, если запрос синхронный . Теперь нужно найти обходной путь.