TsgcWSAPIServer_WebPush › Ereignisse › OnWebPushUnsubscription
Wird ausgelöst, wenn ein Browser per POST an den Unsubscription-Endpunkt sendet (PushManager.unsubscribe() oder Service-Worker-Änderung); verwenden Sie es, um das Abonnement aus Ihrem persistenten Speicher zu entfernen.
property OnWebPushUnsubscription: TsgcWSWebPushUnsubscription;
// TsgcWSWebPushUnsubscription = procedure(Sender: TObject; aSubscription: TsgcHTTP_API_WebPush_PushSubscription; var ResponseCode: Integer) of object
—
Die interne Subscriptions-Liste wird automatisch über Subscriptions.RemoveSubscription aktualisiert, sodass BroadcastNotification nicht mehr auf den abgemeldeten Endpunkt abzielt. Spiegeln Sie die Löschung in Ihrem eigenen Speicher, damit keine veralteten Datensätze zurückbehalten werden. Setzen Sie ResponseCode auf den HTTP-Status, der an den Browser zurückgesendet wird — normalerweise 200 bei Erfolg.
procedure TForm1.sgcWSAPIServer_WebPush1WebPushUnsubscription(Sender: TObject;
aSubscription: TsgcHTTP_API_WebPush_PushSubscription; var ResponseCode: Integer);
begin
DeleteSubscriptionFromDB(aSubscription.Endpoint);
ResponseCode := 200;
end;