我有一个客户端/服务器应用程序,它通过tcp / ip套接字通过一个通常不可靠的无线网络进行通信。 为了在发生连接错误时使其响应,我创建了此协议。 1)客户端发送请求 2)服务器确认接收请求(1秒超时) 3)客户端等待时的服务器进程(可能需要10秒)(超时20秒) 4)服务器发送响应 有时请求命令会丢失(客户端通过打开的连接发送它但服务器永远不会收到它),但是使用这个协议我立即知道命令是否已被接收并且将被处理。
我在问什么(我用RESTSharp和ServiceStack进行了一些测试)是:可以通过webservice做这样的事情吗?响应之前的客户收到确认已收到请求的地方?
谢谢, 马蒂亚
答案 0 :(得分:0)
在应用程序代码中看到这种类型的错误处理很奇怪,因为如果HTTP请求不成功,它将抛出异常。
要在应用程序代码中获取确认收据,您需要添加第二个请求,以实现某种Push Event / Comet技术,以使服务器通知客户端不同的事件,例如收到了什么请求ID。