TsgcWSAPIServer_WebPush › Zdarzenia › OnWebPushUnsubscription
Wywoływane, gdy przeglądarka wysyła żądanie POST do punktu końcowego anulowania subskrypcji (PushManager.unsubscribe() lub zmiana service-workera); pozwala usunąć subskrypcję z trwałego magazynu.
property OnWebPushUnsubscription: TsgcWSWebPushUnsubscription;
// TsgcWSWebPushUnsubscription = procedure(Sender: TObject; aSubscription: TsgcHTTP_API_WebPush_PushSubscription; var ResponseCode: Integer) of object
—
Wewnętrzna lista Subscriptions jest automatycznie aktualizowana za pośrednictwem metody Subscriptions.RemoveSubscription, dzięki czemu metoda BroadcastNotification nie kieruje już powiadomień do wyrejestrowanego punktu końcowego. Należy odzwierciedlić usunięcie we własnym magazynie danych, aby nie zachowywać przestarzałych rekordów. Należy ustawić pole ResponseCode na kod stanu HTTP zwracany do przeglądarki — zazwyczaj 200 przy powodzeniu.
procedure TForm1.sgcWSAPIServer_WebPush1WebPushUnsubscription(Sender: TObject;
aSubscription: TsgcHTTP_API_WebPush_PushSubscription; var ResponseCode: Integer);
begin
DeleteSubscriptionFromDB(aSubscription.Endpoint);
ResponseCode := 200;
end;