TsgcWSAPIServer_WebPush › 이벤트 › OnWebPushUnsubscription
브라우저가 Unsubscription 엔드포인트(PushManager.unsubscribe() 또는 service-worker 변경)에 POST할 때 발생합니다. 영속 저장소에서 구독을 제거하는 데 사용하십시오.
property OnWebPushUnsubscription: TsgcWSWebPushUnsubscription;
// TsgcWSWebPushUnsubscription = procedure(Sender: TObject; aSubscription: TsgcHTTP_API_WebPush_PushSubscription; var ResponseCode: Integer) of object
—
내부 Subscriptions 목록은 Subscriptions.RemoveSubscription을 통해 자동으로 업데이트되므로, BroadcastNotification은 더 이상 구독 취소된 엔드포인트를 대상으로 하지 않습니다. 오래된 레코드가 유지되지 않도록 자체 저장소에서 삭제를 미러링하십시오. ResponseCode를 브라우저에 다시 보낼 HTTP 상태로 설정하십시오. 일반적으로 성공 시 200입니다.
procedure TForm1.sgcWSAPIServer_WebPush1WebPushUnsubscription(Sender: TObject;
aSubscription: TsgcHTTP_API_WebPush_PushSubscription; var ResponseCode: Integer);
begin
DeleteSubscriptionFromDB(aSubscription.Endpoint);
ResponseCode := 200;
end;