2015-07-14 2 views
2

Push API определяет извещающий сервис какКак настроен URL-адрес Push-Push Push?

система, которая позволяет серверам приложений отправлять нажимные сообщения на веб-приложение.

Подписка на услугу создается по вызову serviceWorkerRegistration .pushManager.subscribe() без каких-либо параметров.

Как настроен URL-адрес этой настройки push-сервиса? Я бы ожидал, что .subscribe() возьмет параметр URL для этой услуги.

сестра спецификация толкающего API, в Generic Event Delivery Using HTTP Push, говорит:

толчка служба: Этот ресурс используется для создания подписок сообщений нажимных (смотрите раздел 3). URL-адрес службы push настраивается в пользовательских агентах.

Но в нем не указывается, как эта конфигурация будет иметь место.

ответ

4

Эта цитата из the second document you cite отвечает на вопрос:

Этот документ намеренно не описывает, как толчок сервис обнаружил. Обнаружение push-сервисов остается для будущих усилий, если оказывается необходимым вообще. Ожидается, что пользовательские агенты будут , настроенные с URL-адресом для службы push.

В настоящее время браузеры поставляются со встроенными знаниями некоторых конкретных услуг push, таких как GCM в случае Chrome. Об этом говорится в статье Push Notifications on the Open Web на HTMLRocks:

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

Но было бы интересно посмотреть, откроются ли браузеры в будущем, так что, как вы полагаете, мы могли бы указать нашу собственную выбранную услугу в аргументе subscribe.

2

Вы сначала зарегистрируете сервисного работника с navigator.serviceWorker.register('/some-service-worker.js'), а затем, когда вы позвоните serviceWorkerRegistration .pushManager.subscribe(), этот seriveceWorkerRegistration относится к только что зарегистрированному сервисному работнику.

Это лучше, чтобы продемонстрировать это на примере:

navigator.serviceWorker.register('/some-service-worker.js').then(function() { 
    navigator.serviceWorker.ready.then(function(serviceWorkerRegistration) { 
     serviceWorkerRegistration.pushManager.subscribe({userVisibleOnly: true}).then(function() {/*...*/}); 
    }); 
}); 
+1

Да, я понимаю, как получить подписку на принудительную, речь идет конкретно о том, может ли URL толчок службы быть настроен при получении подписки. В настоящее время ответа нет; он запекается в каждом браузере. –

Смежные вопросы