Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. Les API Web
  3. API Push

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 EnglishAlways switch to English

API Push

Note : Cette fonctionnalité est disponible via lesWeb Workers.

L'APIPush permet aux applications web de recevoir des messages poussés depuis un serveur, que l'application soit active au premier plan, chargée, ou non. Ceci permet de fournir des notifications asynchrones et des alertes/mises à jour pour les personnes qui souhaitent en recevoir, créant l'opportunité d'être au courant rapidement.

Concepts et usages de Push

Attention :Lorsqu'on implémente des abonnements viaPushManager, il est primordial de se protéger contre les attaques CSRF/XSRF. Pour plus d'informations, voir les articles suivants :

Pour qu'une application web puisse recevoir des messagespush, elle doit disposer d'unservice worker actif. Quand leservice worker est actif, on peut souscrire aux notificationspush en utilisantPushManager.subscribe().

Cet abonnement fournira un objetPushSubscription contenant toutes les informations dont l'application a besoin pour transmettre un messagepush : un point de terminaison et la clé de chiffrement nécessaire à l'envoi des données.

Leservice worker sera alors démarré pour réceptionner les messagespush via le gestionnaire d'évènementonpush. Ainsi, l'application peut réagir aux messagespush reçus, par exemple en affichant une notification avecServiceWorkerRegistration.showNotification().

Chaque abonnement est propre à unservice worker. Le point d'accès correspondant pour l'abonnement est uneURL fonctionnelle (capability URL) unique. Il suffit de connaître ce point d'accès pour envoyer un message à votre application. L'URL du point d'accès doit donc rester secrète, afin d'éviter que d'autres applications puissent envoyer des messagespush vers votre application.

L'activation d'unservice worker nécessaire à la réception du messagepush peut accroître l'utilisation des ressources, particulièrement de la batterie. Chaque navigateur adopte une stratégie différente pour gérer cette consommation, sans qu'il y ait actuellement de mécanisme standard. Firefox impose un quota de messagespush pouvant être envoyés à une application (cependant, les messagespush utilisés pour les notifications sont exempts de cette limite). Le quota est réinitialisé à chaque visite sur le site. Chrome n'impose pas de limite particulière.

Interfaces

PushEvent

Représente une actionpush envoyée àla portée globale d'unServiceWorker. Elle contient les informations envoyées depuis le serveur d'application vers l'objetPushSubscription responsable du traitement.

PushManager

Permet de recevoir des notifications de serveurs tiers et de demander les URL pour les notificationspush.

PushMessageData

Fournit l'accès aux données transmises par le serveur, incluant des méthodes pour manipuler les données reçues.

PushSubscription

Fournit l'URL de l'abonnement au point d'accès et permet également le désabonnement.

PushSubscriptionOptions

Représente les options associées à l'abonnement.

Ajouts à l'APIService Worker

Les ajouts àl'APIService Worker suivants ont été spécifiés dans l'APIPush, pour fournir un point d'entrée à l'utilisation de messagesPush pour surveiller et répondre aux évènements de changement liés aux messagesPush et aux souscriptions.

ServiceWorkerRegistration.pushManagerLecture seule

Fournit une référence à l'interface une référence de l'interfacePushManager permettant de gérer les abonnementspush (créer un nouvel abonnement, obtenir l'abonnement existant, connaître l'état des permissions, se désabonner). Il s'agit du point d'entrée vers l'APIPush.

onpush

Un gestionnaire d'événement déclenché à chaque évènementpush ; c'est-à-dire à chaque messagepush reçu depuis le serveur.

onpushsubscriptionchange

Un gestionnaire d'événement déclenché à chaque évènementpushsubscriptionchange ; par exemple, quand un abonnementpush a été invalidé, ou va l'être (par exemple, quand un servicepush définit une durée d'expiration).

Exemples

Le livre de recettes pour lesservice workers contient différents exemples d'utilisation de l'APIPush.

Spécifications

Specification
Push API
# pushevent-interface
Push API
# pushmessagedata-interface

Compatibilité des navigateurs

api.PushEvent

api.PushMessageData

Voir aussi

Help improve MDN

Learn how to contribute

Cette page a été modifiée le par lescontributeurs du MDN.


[8]ページ先頭

©2009-2025 Movatter.jp