TsgcWebSocketHTTPServerÖzellikler › SessionClass

SessionClass Özellik

Sunucunun yeni HTTP oturumları oluşturmak için kullandığı sınıf; her oturumda özel veri saklamak için kendi TIdHTTPSession torununuza ayarlayın.

Sözdizimi

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

Varsayılan Değer

TIdHTTPSession

Remarks

Varsayılan olarak sunucu düz TIdHTTPSession nesneleri oluşturur. SessionClass öğesini TIdHTTPSession sınıfının bir torununa ayarlayın; böylece sunucu, AutoStartSession etkinleştirildiğinde otomatik olarak oluşturulanlar dahil her oturum için bunun yerine o sınıfı oluşturur. Benzersiz oturum ID'si, oturum çerezi, SessionTimeOut ve eski oturumların kaldırılması tam olarak önceki gibi çalışmaya devam eder.

Oturum oluşturulduğunda kendi alanlarınızı ilklendirmek istiyorsanız, torununuzda sanal yapıcı CreateInitialized öğesini geçersiz kılın. Oturumu ARequestInfo.Session öğesinden geri okuyun ve kendi sınıfınıza dönüştürün.

SessionClass, sunucu etkinleştirilmeden önce ayarlanmalıdır ve nil olamaz. Kendi SessionList değerinizi atarsanız, bu özellik artık geçerli olmaz, çünkü hangi sınıfın oluşturulacağına listeniz karar verir. Ayrıntılı bir açıklama için Oturumlar bölümüne bakın ve OnCreateSession olayının oturum sınıfını değiştirmenin önerilen yolu olmadığını unutmayın.

Örnek


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;

Özelliklere Dön