diff options
Diffstat (limited to 'files/ru/web/api/serviceworkerregistration/pushmanager')
| -rw-r--r-- | files/ru/web/api/serviceworkerregistration/pushmanager/index.html | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/files/ru/web/api/serviceworkerregistration/pushmanager/index.html b/files/ru/web/api/serviceworkerregistration/pushmanager/index.html new file mode 100644 index 0000000000..ceaa0bc41e --- /dev/null +++ b/files/ru/web/api/serviceworkerregistration/pushmanager/index.html @@ -0,0 +1,72 @@ +--- +title: ServiceWorkerRegistration.pushManager +slug: Web/API/ServiceWorkerRegistration/pushManager +translation_of: Web/API/ServiceWorkerRegistration/pushManager +--- +<div>{{SeeCompatTable}}{{APIRef("Service Workers API")}}</div> + +<p>Свойство <strong><code>pushManager</code></strong> интерфейса {{domxref("ServiceWorkerRegistration")}} возвращает ссылку на интерфейс {{domxref("PushManager")}}, позволяющий управлять подписками на push-уведомления. Включает поддержку процедуры подписки, получения активной подписки, а также предоставляет доступ к стутусу разрешений на push-уведомления.</p> + +<h2 id="Syntax" name="Syntax" style="line-height: 30px; font-size: 2.14285714285714rem;">Синтакс</h2> + +<pre class="syntaxbox" style="font-size: 14px;">myPushManager = ServiceWorker.pushManager +</pre> + +<h3 id="Значение">Значение</h3> + +<p>Объект {{domxref("PushManager")}}.</p> + +<h2 id="Примеры">Примеры</h2> + +<pre class="brush: js">this.onpush = function(event) { + console.log(event.data); + // Отсюда можно записывать данные в IndexedDB, отправлять их в любое + // открытое окно, отображать уведомление и т. д. +} + +navigator.serviceWorker.register('serviceworker.js').then( + function(serviceWorkerRegistration) { + serviceWorkerRegistration.pushManager.subscribe().then( + function(pushSubscription) { + console.log(pushSubscription.subscriptionId); + console.log(pushSubscription.endpoint); + // Детали push-подписки, требуемые сервером приложения, + // теперь доступны, и могут быть отправлены, к примеру, + // при помощи XMLHttpRequest. + }, function(error) { + // При разработке это часто помогает отлавливать ошибки в консоли. + // В продакшен-среде это также может быть полезно для отправки отчета + // об ошибках на сервер приложения. + console.log(error); + } + ); + });</pre> + +<h2 id="Спецификации">Спецификации</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Specification</th> + <th scope="col">Status</th> + <th scope="col">Comment</th> + </tr> + <tr> + <td>{{SpecName('Push API', '#pushmanager-interface', 'PushManager')}}</td> + <td>{{Spec2('Push API')}}</td> + <td>Initial definition.</td> + </tr> + </tbody> +</table> + +<h2 id="Совместимость_с_браузерами">Совместимость с браузерами</h2> + + + +<p>{{Compat("api.ServiceWorkerRegistration.pushManager")}}</p> + +<h2 id="Смотрите_также">Смотрите также</h2> + +<ul> + <li><a href="/en-US/docs/Web/API/Push_API">Push API</a></li> +</ul> |
