有时通信会出现错误:服务器可能因连接未授权或消息格式不正确而断开连接。有 2 个事件用于捕获错误。
每次 WebSocket 协议发生错误时触发此事件,例如无效的消息类型、无效的 utf8 字符串……
procedure OnError(Connection: TsgcWSConnection; const Error: string);
begin
WriteLn('#error: ' + Error);
end;
每次发生异常时触发此事件,例如向未激活的套接字写入数据或访问不存在的对象。
procedure OnException(Connection: TsgcWSConnection; E: Exception);
begin
WriteLn('#exception: ' + E.Message);
end;
默认情况下,当连接被服务器关闭时,将触发异常。若不希望触发这些异常,请禁用 Options.RaiseDisconnectExceptions。