TsgcWebSocketHTTPServerProperties › SessionClass

SessionClass Property

Classe utilizzata dal server per creare nuove sessioni HTTP; impostarla su un proprio discendente di TIdHTTPSession per memorizzare dati personalizzati in ogni sessione.

Sintassi

property SessionClass: TsgcIdHTTPSessionClass read GetSessionClass write SetSessionClass;
// TsgcIdHTTPSessionClass = class of TIdHTTPSession

Valore predefinito

TIdHTTPSession

Note

Per impostazione predefinita il server crea semplici oggetti TIdHTTPSession. Impostare SessionClass su un discendente di TIdHTTPSession e il server creerà invece quella classe, per ogni sessione, comprese quelle create automaticamente quando AutoStartSession è abilitato. L'ID di sessione univoco, il cookie di sessione, SessionTimeOut e la rimozione delle sessioni scadute continuano a funzionare esattamente come prima.

Override the virtual constructor CreateInitialized in your descendant if you want to initialize your own fields when the session is created. Read the session back from ARequestInfo.Session and cast it to your class.

SessionClass must be set before the server is activated, and it cannot be nil. If you assign your own SessionList, this property no longer applies, because your list decides which class to create. See Sessions for a full explanation, and note that the OnCreateSession event is not the recommended way to change the session class.

Esempio


type
  TMySession = class(TIdHTTPSession)
  private
    FUserName: String;
  public
    property UserName: String read FUserName write FUserName;
  end;

oServer := TsgcWebSocketHTTPServer.Create(nil);
oServer.SessionState := true;
oServer.SessionTimeout := 600000;
oServer.SessionClass := TMySession;
oServer.Active := true;

Torna alle Proprietà