TsgcWebSocketLoadBalancerServerEvents › OnBinary

OnBinary 事件

当负载均衡器本身在其某个下游会话上收到二进制 WebSocket 帧时触发。

语法

property OnBinary: TsgcWSBinaryEvent;
// TsgcWSBinaryEvent = procedure(Connection: TsgcWSConnection; const Data: TMemoryStream) of object

默认值

备注

OnBinary 继承自底层 HTTP/WebSocket 服务器,当负载均衡器终止的连接上收到完整的二进制帧时引发(例如,因无后端可用而未被转发的连接,或直接由 LoadBalancer 处理协议的连接)。Data 流包含负载,其位置为 0;请读取一次且不要释放它,服务器拥有该缓冲区。对于正在被代理到后端服务器的连接上到达的数据,请改用 OnClientBinary,它在转发之前暴露每个客户端的帧。

示例


procedure OnBinary(Connection: TsgcWSConnection; const Data: TMemoryStream);
begin
  Log(Format('Received %d bytes from %s', [Data.Size, Connection.Guid]));
end;

返回事件