TsgcWSAPIServer_WebPushEreignisse › OnWebPushSubscription

OnWebPushSubscription Ereignis

Wird ausgelöst, wenn ein Browser nach dem Aufruf von PushManager.subscribe() einen POST an den Subscription-Endpunkt sendet; empfangen Sie den Endpunkt, den p256dh-Schlüssel und das auth-Secret, um sie serverseitig zu persistieren.

Syntax

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

Standardwert

Hinweise

Die Komponente speichert das neue Abonnement bereits in der internen Subscriptions-Liste, sodass es für BroadcastNotification erreichbar wird. Verwenden Sie das Ereignis, um das eingehende Abonnement in Ihrer eigenen Datenbank zu persistieren und/oder serverseitige Validierung anzuwenden (Authentifizierung, Rate-Limiting, Duplikaterkennung). Setzen Sie ResponseCode auf den HTTP-Status, der an den Browser zurückgegeben wird — geben Sie 200/201 bei Erfolg oder einen 4xx zur Ablehnung zurück (zum Beispiel 401, wenn der Benutzer nicht autorisiert ist).

Beispiel

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;

Zurück zu Ereignissen