(Как) Может ли расширение Chrome прослушивать сообщения с моего сервера? - PullRequest
0 голосов
/ 11 сентября 2018

Фоновая страница моего Chrome Extension настроена как страница события, то есть большую часть времени она спит, если ее не разбудит какой-либо зарегистрированный слушатель событий.

Я хотел бы иметь возможность время от времени отправлять сообщения со своего сервера на страницу событий отдельного пользователя моего добавочного номера. Они не обязательно должны отображаться в виде уведомлений на рабочем столе, скорее всего фоновый скрипт решит, что делать с любым входящим сообщением. Это может очень хорошо хранить некоторую информацию, например, в местном хранилище. Если пользовательский клиент в момент отправки сообщения находился в автономном режиме, в идеале оно должно быть доставлено после его возврата в оперативный режим.

Я бы хотел избегать опроса моего сервера через равные промежутки времени каждый раз, когда фоновый скрипт активен, хотя это было бы очевидным решением.

Поэтому мой вопрос заключается в том, можно ли зарегистрировать событие особого вида на моей странице событий, чтобы оно активировалось и включало некоторые функции при поступлении входящего сообщения с моего сервера. В идеале, сообщение сервера должно быть не для всех моих пользователей, а для целевого сообщения.

Какие у меня есть варианты?

Я читал о сервисных работниках и их Push API, но кажется, что они только постепенно переходят на Chrome Extensions. Я не уверен, готовы ли они к стабильной версии браузера, и не нашел никакой документации о том, как они работают с расширениями. Я также немного читал о Google Cloud Messaging, но устарел в пользу нового дорогостоящего решения Firebase.

1 Ответ

0 голосов
/ 14 сентября 2018

Работник службы функционирует как прокси-сервер, позволяя изменять запросы и ответы, заменять их элементами из собственного кэша и т. Д. В то время как Chrome имеет свой собственный подход для кэширования / установки ресурсов, необходимо отобразить расширение Chrome. Поэтому при попытке перехватить регистрацию работника службы в расширении Chrome возникнет ошибка.

См. Для получения дополнительной информации:

См. Связанный пост SO:

...