TsgcWSAPIServer_WebPushÉvénements › OnWebPushSubscription

OnWebPushSubscription Event

Se déclenche lorsqu'un navigateur envoie un POST au point de terminaison d'abonnement après l'appel de PushManager.subscribe() ; recevez le point de terminaison, la clé p256dh et le secret d'authentification à persister côté serveur.

Syntaxe

property OnWebPushSubscription: TsgcWSWebPushSubscription;
// TsgcWSWebPushSubscription = procedure(Sender: TObject; aSubscription: TsgcHTTP_API_WebPush_PushSubscription; var ResponseCode: Integer) of object

Valeur par défaut

Remarques

Le composant stocke déjà le nouvel abonnement dans la liste interne Subscriptions afin qu'il soit accessible par BroadcastNotification. Utilisez l'événement pour persister l'abonnement entrant dans votre propre base de données et/ou appliquer une validation côté serveur (authentification, limitation de débit, détection des doublons). Définissez ResponseCode sur le statut HTTP retourné au navigateur — retournez 200/201 en cas de succès ou un 4xx pour rejeter (par exemple 401 si l'utilisateur n'est pas autorisé).

Exemple

procedure TForm1.sgcWSAPIServer_WebPush1WebPushSubscription(Sender: TObject;
  aSubscription: TsgcHTTP_API_WebPush_PushSubscription; var ResponseCode: Integer);
begin
  SaveSubscriptionToDB(aSubscription.Endpoint,
                       aSubscription.PublicKey,
                       aSubscription.AuthSecret);
  ResponseCode := 201;
end;

Retour aux événements