我需要一种方法来检测对长时间运行的HTTP POST请求的缺失响应。当网络基础设施(防火墙,代理,未插入的电缆等)丢弃响应数据包时,会出现此问题。服务器可能会检测到此故障,但客户端无法在POST后发送额外的字节来探测TCP连接的状态。故障可能仅限于单个TCP连接。例如,我可能随后打开到服务器的新TCP连接。
我正在寻找仍然使用HTTP POST的解决方案,并且不会更改服务器端处理的持续时间。
我能想到的一些解决方案是:
提供侧面渠道界面以检索请求&回应历史。如果历史记录将响应列为已发送(可能导致TCP错误)但我尚未在合理时间内收到响应,则可能会生成本地错误。
使用X标头请求服务器定期发送“虚假”100继续临时响应。如果我没有看到预期的100继续或非临时响应,我可以生成本地错误。
这个问题是否有最先进的解决方案?
答案 0 :(得分:0)
对我而言,听起来就像使用Soap一样,使用有状态连接或服务器端推送技术可以做得更好。