TsgcWebSocketHTTPServer › Zdarzenia › OnDisconnect
Wywoływane za każdym razem, gdy połączenie WebSocket z klientem zostaje przerwane.
property OnDisconnect: TsgcWSDisconnectEvent;
// TsgcWSDisconnectEvent = procedure(Connection: TsgcWSConnection; Code: Integer) of object
—
OnDisconnect jest wywoływane za każdym razem, gdy aktywna sesja WebSocket kończy się, niezależnie od tego, czy aplikacja wywołała Disconnect lub DisconnectAll, klient zamknął połączenie, czy gniazdo TCP zostało nieoczekiwanie przerwane. Parametr Code zawiera kod zamknięcia WebSocket zgłoszony przez peera (1000 oznacza normalne zamknięcie, 1006 — nieprawidłowe przerwanie). Po powrocie z tego zdarzenia obiekt Connection nie jest już prawidłowy do wysyłania danych, dlatego należy zwolnić wszelkie zasoby powiązane z sesją na podstawie jej Guid. Zdarzenie nie jest wywoływane dla zwykłych żądań HTTP; te kończą się bez powiadomienia po wysłaniu odpowiedzi.
procedure OnDisconnect(Connection: TsgcWSConnection; Code: Integer);
begin
Log(Format('Client %s disconnected (code %d)', [Connection.Guid, Code]));
end;