TsgcWebSocketHTTPServerZdarzenia › OnInvalidSession

OnInvalidSession Zdarzenie

Wywoływane, gdy żądanie HTTP zawiera nieznany lub wygasły identyfikator sesji, umożliwiając aplikacji podjęcie decyzji o sposobie reakcji.

Składnia

property OnInvalidSession: TIdHTTPInvalidSessionEvent;
// TIdHTTPInvalidSessionEvent = procedure(AContext: TIdContext; ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo; var VContinueProcessing: Boolean; const AInvalidSessionID: String) of object

Wartość domyślna

Uwagi

Zdarzenie OnInvalidSession jest wywoływane, gdy przychodzące żądanie HTTP zawiera ciasteczko sesji, którego identyfikator nie jest obecny w SessionList (sesja wygasła lub nigdy nie została utworzona na tym serwerze). AInvalidSessionID to odrzucony identyfikator, a VContinueProcessing pozwala procedurze obsługi zdecydować, co nastąpi dalej: pozostawienie wartości True powoduje kontynuowanie obsługi żądania (przydatne do serwowania przekierowania na stronę logowania z OnCommandGet), natomiast ustawienie wartości False zatrzymuje przetwarzanie; w takim przypadku aplikacja powinna wypełnić AResponseInfo przed zwróceniem. Zdarzenie jest wywoływane wyłącznie, gdy SessionState ma wartość True.

Przykład


procedure OnInvalidSession(AContext: TIdContext; ARequestInfo: TIdHTTPRequestInfo;
  AResponseInfo: TIdHTTPResponseInfo; var VContinueProcessing: Boolean;
  const AInvalidSessionID: String);
begin
  AResponseInfo.Redirect('/login');
  VContinueProcessing := False;
end;

Powrót do Zdarzeń