OkHttp3默认自动重试POST请求

时间:2016-06-16 12:17:29

标签: httpurlconnection okhttp3

关注的是票据制度。

当客户端(Android或PC)使用okhttp3发送POSTPUT请求时,帐单服务器可能会收到请求并在数据库中插入帐单记录但会响应在很长一段时间内,客户端无法获得有效(及时)响应。关键是在这种情况下,okhttp3会重新发送请求吗?

这非常重要,因为如果重试,数据库中将会有重复的记录,而不会比较旧的帐单记录。

我怀疑这是因为OkHttpClient.Builder有一个名为retryOnConnectionFailure的方法,这将如何影响帖子请求行为?方法名称与连接有关。

关于HttpURLConnection的重试行为的同样问题。

1 个答案:

答案 0 :(得分:1)

请参阅github中的此问题#2394okhttp 3.2 似乎有此重试问题。在 3.3 版本中,此行为更改为
如果我们在发送请求后遇到读取超时,请不要恢复,但如果我们遇到构建连接的超时,请执行恢复。