在OKHttpClient的拦载器里遇到java.lang.IllegalStateException异常

网友投稿 215 2022-12-01

在OKHttpClient的拦载器里遇到java.lang.IllegalStateException异常

最近发现当请求结果返回400,400,500等之类的错误时,总是报一个错:java.lang.IllegalStateException: closed

后来在这篇文章​​bodyContent = response.body?.string()response.body?.close()

如JakeWharton 所说的那样,我在interceptor里从response读取内容并关闭response。这样将导致Retrofit里无法正常使用response,如报的错提示那样:

java.lang.IllegalStateException: closed

解决方法就是用OkHttp的 peekBody()来代替上面的做法:

response.peekBody(Long.MAX_VALUE).string()

借此记录一个错误。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:JavaScript中的this、call、apply
下一篇:简介synchronized关键词
相关文章

 发表评论

暂时没有评论,来抢沙发吧~