Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

PushEvent

Baseline Widely available

Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis ⁨mars 2023⁩.

Expérimental: Il s'agit d'une technologie expérimentale.
Vérifiez attentivement le tableau de compatibilité des navigateurs avant de l'utiliser en production.

L'interface PushEvent de l'API Push représente un message Push qui a été reçu. Cet événement est envoyé au scope global d'un ServiceWorker. Il contient les informations transmises de l'application serveur vers un PushSubscription.

Constructeur

PushEvent.PushEvent()

Créer un nouvel objet PushEvent.

Propriétés

Hérite des propriétés de son parent, ExtendableEvent. Propriétés additionnelles:

PushEvent.data Lecture seule

Retourne une référence à un objet PushMessageData contenant les données transmises au PushSubscription.

Méthodes

Hérite des méthodes de son parent, ExtendableEvent.

Exemples

L'exemple suivant prends les données du PushEvent et les affiche sur tous les clients du service worker.

js
self.addEventListener("push", function (event) {
  if (!(self.Notification && self.notification.permission === "granted")) {
    return;
  }

  var data = {};
  if (event.data) {
    data = event.data.json();
  }
  var title = data.title || "Something Has Happened";
  var message = data.message || "Here's something you might want to check out.";
  var icon = "images/new-notification.png";

  var notification = new Notification(title, {
    body: message,
    tag: "simple-push-demo-notification",
    icon: icon,
  });

  notification.addEventListener("click", function () {
    if (clients.openWindow) {
      clients.openWindow(
        "https://example.blog.com/2015/03/04/something-new.html",
      );
    }
  });
});

Spécifications

Specification
Push API
# pushevent-interface

Compatibilité des navigateurs

Voir aussi