TsgcWebSocketHTTPServerEigenschappen › SessionList

SessionList Eigenschap

Lijst met de actieve HTTP-sessies; lees hem om sessies via code te beheren, of wijs uw eigen lijst toe om te bepalen waar sessies worden opgeslagen.

Syntaxis

property SessionList: TIdHTTPCustomSessionList read GetSessionList write SetSessionList;

Standaardwaarde

nil totdat de server is geactiveerd

Opmerkingen

Lees SessionList om sessies op code te zoeken, aan te maken of te verwijderen, met GetSession, CreateSession en CreateUniqueSession. De lijst wordt pas aangemaakt wanneer de server start, dus is deze nil zolang de server niet actief is.

Wijs uw eigen lijst toe wanneer u volledige controle nodig hebt over hoe sessies worden opgeslagen, bijvoorbeeld door ze in een database te bewaren of ze tussen meerdere servers te delen. Erf van TIdHTTPDefaultSessionList en overschrijf de virtuele methode CreateSession; CreateUniqueSession roept die intern aan, dus de unieke sessie-ID wordt nog steeds voor u gegenereerd. De lijst moet worden toegewezen voordat de server wordt geactiveerd, omdat de onderliggende Indy-server het niet toestaat de sessielijst te vervangen terwijl hij draait.

Wanneer u uw eigen lijst toewijst, is de eigenschap SessionClass niet langer van toepassing, omdat uw lijst bepaalt welke klasse wordt aangemaakt. Zie Sessions voor een volledige uitleg.

Voorbeeld


type
  TMySessionList = class(TIdHTTPDefaultSessionList)
  public
    function CreateSession(const RemoteIP, SessionID: string)
      : TIdHTTPSession; override;
  end;

function TMySessionList.CreateSession(const RemoteIP, SessionID: string)
  : TIdHTTPSession;
begin
  Result := TMySession.CreateInitialized(Self, SessionID, RemoteIP);
  SessionList.Add(Result);
end;

oServer.SessionList := TMySessionList.Create(nil);
oServer.Active := true;

Terug naar Properties