--- title: PushManager.subscribe() slug: Web/API/PushManager/subscribe translation_of: Web/API/PushManager/subscribe ---
{{SeeCompatTable}}{{ApiRef("Push API")}}
Die Methode subscribe() des {{domxref("PushManager")}} Interfaces meldet die API an einem Push-Service an.
Sie bekommt {{jsxref("Promise")}} als Rückgabewert, welcher sich zu einem {{domxref("PushSubscription")}} Objekt auflösen lässt, und weitere Details der Push-Subscription enthält. Eine neue Push-Subscription wird erstellt falls der aktuelle Service-Worker nicht bereits eine existierende Push-Subscription enthält.
PushManager.subscribe(options).then(function(pushSubscription) { ... } );
options {{optional_inline}}userVisibleOnly: Ein boolscher Wert der anzeigt, dass die zurückgegebene Push-Subscription nur für Nachrichten genutz wird, dessen Effekt den sie (die Push-Subscription) auslöst, auch nur für den Anwender sichtbar sind.{{jsxref("Promise")}} welcher ein {{domxref("PushSubscription")}} Objekt auflöst.
this.onpush = function(event) {
console.log(event.data);
/**********************************************
++ Die Überstzung des Kommentars, folgt noch ++
**********************************************/
// From here we can write the data to IndexedDB, send it to any open
// windows, display a notification, etc.
}
navigator.serviceWorker.register('serviceworker.js').then(
function(serviceWorkerRegistration) {
serviceWorkerRegistration.pushManager.subscribe().then(
function(pushSubscription) {
console.log(pushSubscription.endpoint);
/**********************************************
++ Die Überstzung des Kommentars, folgt noch ++
**********************************************/
// The push subscription details needed by the application
// server are now available, and can be sent to it using,
// for example, an XMLHttpRequest.
}, function(error) {
/**********************************************
++ Die Überstzung des Kommentars, folgt noch ++
**********************************************/
// During development it often helps to log errors to the
// console. In a production environment it might make sense to
// also report information about errors back to the
// application server.
console.log(error);
}
);
});
| Spezifikation | Status | Kommentar |
|---|---|---|
| {{SpecName('Push API', '#widl-PushManager-subscribe-Promise-PushSubscription--PushSubscriptionOptions-options', 'subscribe()')}} | {{Spec2('Push API')}} | Initial-Definition. |
| Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
|---|---|---|---|---|---|
| Basic support | {{CompatChrome(42.0)}} | {{CompatGeckoDesktop(44.0)}} | {{CompatNo}} | {{CompatUnknown}} | {{CompatNo}} |
| Feature | Android | Android Webview | Firefox Mobile (Gecko) | Firefox OS | IE Mobile | Opera Mobile | Safari Mobile | Chrome for Android |
|---|---|---|---|---|---|---|---|---|
| Basic support | {{CompatNo}} | {{CompatNo}} | {{CompatNo}} | {{CompatNo}} | {{CompatNo}} | {{CompatNo}} | {{CompatNo}} | {{CompatChrome(42.0)}} |