使用xutils的httpUtils出现异常
使用xutils的httpUtils出现 com.lidroid.xutils.exception.HttpException: org.apache.http.NoHttpResponseException: The target server failed to respond 异常,有的时候上传数据会失败,重新上传一次就又OK了。请问是什么原因,有人遇到过吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
xUtils效率太低下,用的都是2.2时代的API,
还不如看看近几年才出的那个KJFrameForAndroid。
@wyouflf 今天又频繁遇到此问题,绝对不是二楼所说的那种情况。第一次发送请求失败,再发一次就OK。不知道有没有人遇到过此奇怪的现象。
这种情况属于正常现象,因为网络环境不是永远都稳定的。解决办法就是,如果发送数据异常。我们可以进行retry,如果retry多次都失败则认为上传失败。如果你的网络环境基本稳定,但是上传数据每次都出现这种情况。你可以检查一下服务端配置是否有问题(比如端口号),网络环境设置是否有问题等等。也可以多换几台手机测试,看看是不是手机系统的问题等等。
自己顶一个,还没有解决
@wyouflf 看来还是得靠自己啊, 在Xutils源码中,RetryHandler类中有如下一行代码
retry = "GET".equals(requestWrapper.getMethod());
但是我这里requestWrapper.getMethod()得到的是‘POST’,所以一直是返回false,也就是retry失效。现在的做法是不管“GET” "POST"直接返回true,问题得到解决。这里有点不明白为什么设计的时候只考虑了“GET”提交没有考虑“POST”提交方式?希望大神指点。