Ich habe eine Webanwendung. Ich möchte die integrierte HTML 5-Benachrichtigungs-API verwenden, um Benachrichtigungen vom Server zu senden, wenn sich der Benutzer auf einer bestimmten Seite befindet. Ist es möglich?Wie kann ich Push-Benachrichtigungen in einer HTML5-Webanwendung ausführen?
Antwort
Sie können echte Push-Benachrichtigungen mit Web-Apps heute in Chrome mit Service Workers und PushManager von W3C Push API.
Siehe den Artikel Push Notifications on the Open Web für eine Schritt-für-Schritt-Anleitung und Code-Schnipsel, die Sie verwenden können. Hier ist ein Diagramm aus diesem Artikel, das erklärt, wie die Benutzeroberfläche aussieht.
Ein implementation of the Push API has already landed in Firefox zu; Es ist Ziel für den Versand im November 2015 in Firefox 42. Und Microsoft hat auch indicated that the Push API is also under consideration for implementation in Edge team.
Unten ist ein einfaches Codebeispiel, entliehen von MDN.
this.onpush = function(event) {
console.log(event.data);
}
navigator.serviceWorker.register('serviceworker.js').then(
function(serviceWorkerRegistration) {
serviceWorkerRegistration.pushManager.subscribe().then(
function(pushSubscription) {
console.log(pushSubscription.subscriptionId);
console.log(pushSubscription.endpoint);
}, function(error) {
console.log(error);
}
);
});
Es hängt davon ab, was Sie erreichen wollen:
- , wenn Sie ein Push-Benachrichtigungen an den Benutzer während senden wollen, ist Ihre Website surfen Sie WebSockets verwenden können, und (optional) die Benachrichtigungen API Geben Sie der Benachrichtigung einen "nativen" Stil
- Wenn Sie Off-Site-Push-Benachrichtigungen (die auch geliefert werden, wenn der Benutzer nicht auf Ihrer Website ist) möchten, sollten Sie eine Kombination der Push-API (um das Offline-Ereignis auszulösen)) und die Benachrichtigungs - API, um die Benachrichtigung anzuzeigen (Sie kann read more here oder verwenden Sie einen Dienst wie
Pushpad ist nicht kostenlos. Wissensfreigabe sollte frei sein, niemand teilt es kostenlos alle Push-Benachrichtigungen Referenzen Geld fragen. – YumYumYum
@YumYumYum Die Frage ist zu weit gefasst, um hier eine vollständige Antwort zu geben: Wenn Sie von vorne anfangen möchten, schlage ich vor, dass Sie [diese Antwort] lesen (http://stackoverflow.com/a/34920874/51387) (dass Ich habe bereits in meiner Antwort oben verwiesen). Es enthält einen Überblick über die Push-API und einen Link zu [dem Tutorial] (https://developers.google.com/web/updates/2015/03/push-notifications-on-the-open-web), das mir geholfen hat loslegen (trotz der Warnung auf der Seite ist der Artikel heute noch nützlich). – collimarco
Die Clientseite ist einfach. Was ist mit der Serverseite? Ist das nicht das Fleisch der Frage? – Pacerier
Wird der Google Cloud-Messaging-Ansatz (Firebase) nur für Chrome in Betracht gezogen oder funktioniert er auch für Firefox? – Vetterjack