2016-12-02 117 views
3

我从我的后端公司收到伪随机ECONNRESET。我说伪随机是因为虽然它不会像我每次通过发起大量请求一样挑衅它。Android Retrofit我有时会得到ECONNRESET,我不知道为什么

我典型地从活动的生命周期事件中启动下载,因此我使用RetrofitCall.enqueue()在后台网络上进行网络连接。在似乎会导致麻烦的代码部分中,我从后台线程启动了一系列下载(〜15条REST路由,适用于jsons和5-6个文件)。在这种情况下,ECONNRESET apears在3个尝试其中一个被调用的REST路由。

没有更多的解释服务器端我们登录的唯一的东西是读/写ECONNRESET。

这里是我试过:

  • 更新到okhttp 3.5.0(从3.2.0)和改造2.1.0(从2.0.2
  • 我补充说: “连接:关闭” 诠释我的请求头,以防止保活。
  • 我我总池缩小到1: .connectionPool(new ConnectionPool(0, 1, TimeUnit.SECONDS))

它的发生我的手机(安卓6)上,我没有其他的手机测试代码。我与我的AVD有一些无关的麻烦,这些麻烦使我无法在不同的Android版本上进行测试(很快就会被修复)。

你知道什么可以provoque?

感谢,

回答

0

对于记录,我在我的文件下载方式使用HttpURLConnection(whearas我的REST API提出了质疑throught改造和okhttp),我把它改成okHttp,现在一切都很好。

相关问题