Я создал и использую работника службы в разрабатываемом веб-приложении. Однако мне нужно обновить работника сервиса, так как я обнаружил, что простое прохождение запроса fetch
, когда страница теряет видимость, часто означает, что он никогда не достигнет сервера, если он не прошел через работника сервиса. У меня есть набор API-вызовов на /api/...
, который ранее работник службы смотрел на URL, если он начинался с этой строки, просто игнорировал его (позволяя браузеру обрабатывать так, как обычно). При добавлении простого event.respondWith(fetch(event.request));
эти запросы по-прежнему передаются, но их не убивают, пока сервер не увидит их.
Итак, я обновил код в сервисном работнике, но он просто не обновился на IOS. Я перезагружен с помощью ipad, но, подключив его к ма c и используя веб-инспектор для просмотра кода работника службы, я вижу его все еще старую версию.
Я вижу, что есть onupdatefound
функция регистрации сервисного работника, но я не уверен, для чего и как ее использовать.
Может кто-нибудь показать мне способ обновления сервисного работника.