TsgcWebSocketHTTPServer › 事件 › OnHandshake
在服务器端对握手进行评估后、发送响应之前触发。
property OnHandshake: TsgcWSHandshakeEvent;
// TsgcWSHandshakeEvent = procedure(Connection: TsgcWSConnection; var Headers: TStringList) of object
—
OnHandshake 在客户端 HTTP 升级请求被解析和验证之后、握手响应写回之前,立即在服务器上触发。客户端发送的传入标头可通过连接的 HeadersRequest 属性获取(强制转换为 TsgcWSConnectionServer)。Headers 参数是包含将要返回的响应行的 TStringList;添加自定义行(例如供应商特定标头)可将其包含在 HTTP 响应中。标准 WebSocket 标头(Upgrade、Connection、Sec-WebSocket-Accept...)已填充完毕,不应重复添加。对于 OnCommandGet 服务的普通 HTTP 请求,不会触发此事件。
procedure OnServerHandshake(Connection: TsgcWSConnection; var Headers: TStringList);
begin
ShowMessage(TsgcWSConnectionServer(Connection).HeadersRequest.Text);
end;