При создании реагирующего приложения по умолчанию вызывается сервисный работник. Почему используется сервис воркер? Какова причина вызова по умолчанию?



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Возможно, вам не понадобится сервисный работник для вашего приложения. Если вы создаете проект с помощью приложения create-response-app, оно вызывается по умолчанию.
Сервис-воркеры хорошо объяснены в статье это. Подводя итог
A
service workeris a script that your browser runs in the background, separate from a web page, opening the door to features that don't need a web page or user interaction. Today, they already include features likepush notificationsandbackground syncand haveability to intercept and handle network requests, includingprogrammatically managing a cache of responses.In the future, service workers might support other things like
periodic syncorgeofencing.
По этому PR для create-react-app
Service workersare introduced with create-react-app viaSWPrecacheWebpackPlugin.Using a server worker with a cache-first strategy offers performance advantages, since the network is no longer a bottleneck for fulfilling navigation requests. It does mean, however, that developers (and users) will only see deployed updates on the "N+1" visit to a page, since previously cached resources are updated in the background.
Вызов register service worker включен по умолчанию в новых приложениях, но вы всегда можете удалить его, и тогда вы вернетесь к обычному поведению.
@ DaneelS.Yaitskov, вы можете вызвать его в файле index.js верхнего уровня или аналогичном.
@Siddhartha, не могли бы вы привести конкретный пример и, возможно, обновить ответ? Я нашел это очень полезным, но мне не хватает последних деталей. Спасибо.
Проще говоря, это сценарий, который браузер запускает в фоновом режиме и не имеет никакого отношения к веб-страницам или DOM и предоставляет готовые функции. Это также помогает вам кэшировать ваши активы и другие файлы, когда пользователь находится в автономном режиме или в медленной сети.
Некоторые из этих функций - проксирование сетевых запросов, push-уведомления и фоновая синхронизация. Сервисные работники гарантируют, что у пользователя есть богатый опыт работы в автономном режиме.
Вы можете думать о сервис-воркере как о ком-то, кто сидит между клиентом и сервером, и все запросы, которые отправляются на сервер, проходят через сервис-воркер. В основном посредник. Поскольку все запросы проходят через сервис-воркер, он способен перехватывать эти запросы на лету.
Я хотел бы добавить два важных момента о сервис-воркерах, которые следует учитывать:
Сервис-воркерам требуется HTTPS. Но для включения локального тестирования это ограничение не распространяется на localhost. Это сделано из соображений безопасности, поскольку Service Worker действует как человек посередине между веб-приложением и сервером.
С Создать приложение React Service Worker включается только в производственной среде, например, при запуске npm run build.
Сервисный работник здесь, чтобы помочь разработать Прогрессивное веб-приложение. Хороший ресурс об этом в контексте приложения Create React можно найти на их веб-сайте здесь.
на данный момент сгенерированное приложение responsejs имеет код SW, но в комментарии говорится, что функция регистрации не вызывается. Итак, вопрос в том, где я мог бы это назвать?