TsgcWSAPIServer_WebPushEventos › OnWebPushSubscription

OnWebPushSubscription Event

Dispara quando um navegador faz POST ao endpoint de Subscription depois de chamar PushManager.subscribe(); recebe o endpoint, a chave p256dh e o auth secret para persistir no lado do servidor.

Sintaxe

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

Valor Padrão

Observações

O componente já armazena a nova assinatura na lista interna Subscriptions para que ela se torne acessível por BroadcastNotification. Use o evento para persistir a assinatura recebida no seu próprio banco de dados e/ou aplicar validação no lado do servidor (autenticação, limitação de taxa, detecção de duplicatas). Defina ResponseCode com o status HTTP retornado ao navegador, retorne 200/201 em caso de sucesso ou um 4xx para rejeitar (por exemplo, 401 se o usuário não estiver autorizado).

Exemplo

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;

Voltar para Eventos