我目前正在使用DefaultHttpClient为rails服务器创建HTTP请求。
使用SocketTimeoutException时,网络调用大约有4%的时间失败。
我在网络流量上运行了Wireshark并发现了以下内容:
我的成功通话就像这样开始
并以此结束
失败的通话开始如下:
并以此结束
请注意,结束通话中缺少从服务器发送给我们的HTTP OK消息,导致它在大约15秒后超时。
我想知道是否有人之前遇到此问题,或者有任何调试Android Apache库或Apache rails的建议,以找出我们没有从服务器收到HTTP OK消息的原因。
答案 0 :(得分:0)
我想出来了。如果我的帖子请求中有错误的参数,则rails服务器和apache库会超时。我们传入一个“_b”参数,由于某种未知的原因,服务器不喜欢这个并且会超时请求。删除错误的post参数修复了问题。
如果有其他人看到这样的超时,我建议您查看传入的POST参数。