Страницы

Поиск по вопросам

суббота, 7 декабря 2019 г.

Service Worker - как создать произвести подключение по WebSocket

#javascript #веб_программирование #service_worker


Вопрос такой - есть туториалы по создаю ServiceWorker, но под мою задачу мне необходимо
- создать Worker, который даже когда закрыта вкладка самого приложения, держал соединение
с backend'ом и при необходимости принимал сообщения и показывал уведомления с помощью
Notification API. Соединение подразумеваю делать через WebSocket. Можете объяснить
как все это реализовать или скинуть туториалы или готовые материалы?
    


Ответы

Ответ 1



ServiceWorker не способен на работу в бекграунд - режиме, НО то, что вы хотите можно осуществить. Дело в том, что существует так называемый Push API. Push API позволяет Service Worker'ам получать уведомления даже тогда, когда пользователь не находится на сайте. Работает это так: сервер отсылает Service Worker'ам сообщение через Push API. На клиенте запускается Service Worker и обрабатывает событие onpush, через который сервер и передаёт нужное уведомление. Затем, Service Worker показывает уведомление через Notification API ...ииии... профит! Я рекомендую ознакомиться с этой статьёй. В ней показано использование Push API. Переведена она не полностью, но что имеем, то имеем...

Комментариев нет:

Отправить комментарий