TsgcWSAPIServer_WebPushZdarzenia › OnWebPushSubscription

OnWebPushSubscription Zdarzenie

Wywoływane, gdy przeglądarka wysyła metodą POST żądanie do punktu końcowego subskrypcji po wywołaniu PushManager.subscribe(); należy odebrać punkt końcowy, klucz p256dh i sekret auth, aby je przechować po stronie serwera.

Składnia

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

Wartość domyślna

Uwagi

Komponent przechowuje już nową subskrypcję na wewnętrznej liście Subscriptions, dzięki czemu staje się dostępna przez BroadcastNotification. Zdarzenie służy do utrwalania przychodzącej subskrypcji we własnej bazie danych lub do zastosowania walidacji po stronie serwera (uwierzytelnianie, ograniczenie przepustowości, wykrywanie duplikatów). Ustaw ResponseCode na status HTTP zwracany do przeglądarki: 200/201 w przypadku sukcesu lub kod 4xx w celu odrzucenia (np. 401, jeśli użytkownik nie jest autoryzowany).

Przykład

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;

Powrót do Zdarzeń