首页 > 解决方案 > 3.x版本存在导致请求正文发送错误的bug

问题描述

如下图,发送请求体时,请求头作为正文内容发送。[在此处输入图片描述][1]

我对比了3.x和4.x的代码,发现两个版本对RetryAndFollowUpInterceptor.intercept()的处理是不同的。

4.x 版本调用 finally 中的 detachWithViolence 方法释放资源,但 3.x 版本如果出现异常则不释放资源,导致下一次请求消耗 Buffer 中的数据发送失败。

请帮忙修复3.x版本的这个BUG,谢谢!

当抛出异常时,类 okhttp3.internal.http.RetryAndFollowUpInterceptor 的列表 135 不会执行。

标签: okhttp

解决方案


因为两个版本差别太大,团队暂时不会升级。能修复3.x版本的BUG吗?


推荐阅读