SuperSocket
SuperSocket copied to clipboard
使用2.0,如何记录每个sessionID的所有收发日志?
写在哪个地方比较好? 怎么写? 我是这么写的,但感觉不太好,有没有官方推荐写法?
意思是说,无论我继承哪个IPipelineFilter,我想记录每个sessionID所有的收发日志,存到本地txt中
在“IAppSession”中,并没有ReceiveAsync之类的方法
想要一个类似这样的写法:
private void NewRequestReceivedHandler(SuperSocket.SocketBase.IAppSession session, SuperSocket.SocketBase.Protocol.BinaryRequestInfo requestInfo)
{
// 处理接收到的数据
string receivedData = Encoding.UTF8.GetString(requestInfo.Body);
Console.WriteLine($"Received data from session {session.SessionID}: {receivedData}");
// 可以在这里进行数据处理、响应等操作
}
@kerryjiang
这是你需要的吗?
var host = SuperSocketHostBuilder.Create<StringPackageInfo, CommandLinePipelineFilter>()
.UsePackageHandler(async (session, package) =>
{
Console.WriteLine($"Received data from session {session.SessionID}: {package.Text}");
await Task.Yield();
})
.Build();
await host.RunAsync();