在桌面客户端/自托管服务器ServiceStack应用程序中处理客户端断开连接的正确方法是什么,以便能够跟踪客户端未收到响应的时间? 我的客户端发送请求,在服务器上花费一些时间,然后在收到响应之前断开连接(例如,超出wifi覆盖范围)。 我通过在等待来自服务器的长处理响应的同时终止客户端来模拟它。
使用标准JSON客户端不会引发错误,但如果可能的话,我想拦截断开连接。
使用protobuf-net,会在此处引发Unhandled HttpListenerException:
appHost.ContentTypeFilters.Register(ServiceStack.Common.Web.ContentType.ProtoBuf, (reqCtx, res, stream) => ProtoBuf.Serializer.NonGeneric.Serialize(stream, res), ProtoBuf.Serializer.NonGeneric.Deserialize);
HttpListenerException
我想知道如何拦截它(把try / catch放在哪里)。在这里吗?在注册?
谢谢!