TsgcWebSocketHTTPServer › 事件 › OnCreateSession
当 HTTP 服务器需要创建新会话时触发,以便应用程序提供自定义 TIdHTTPSession 实例。
property OnCreateSession: {$IFDEF INDY10_5_7} TIdHTTPCreateSession {$ELSE} TOnCreateSession {$ENDIF};
// {$IFDEF INDY10_5_7} TIdHTTPCreateSession {$ELSE} TOnCreateSession {$ENDIF} = procedure(Sender: TObject) of object
—
OnCreateSession 在底层 Indy HTTP 服务器的 SessionState 为 True 且即将分配新会话记录时调用(通常是当请求到达时没有有效的会话 Cookie 且 AutoStartSession 为 True)。实际事件签名由 Indy 提供,不同版本之间有所不同,因此声明中使用了 INDY10_5_7 条件编译。该处理程序为应用程序提供了记录会话创建,或为会话列表提供自定义 TIdHTTPSession 子类的机会。大多数应用程序无需处理此事件;请使用 OnSessionStart 响应会话实际激活的时机,并使用 TsgcWebSocketHTTPServer.SessionList.CreateSession/GetSession 手动操作会话。
procedure OnCreateSession(Sender: TObject);
begin
Log('new HTTP session allocated');
end;