今天第一次使用okhttp,因为接口没有告知返回的json格式,只好debug自己看返回的串,结果初次使用直接崩溃了

错误提示java.lang.IllegalStateException: closed

原因在网上查到是因为

OkHttp请求回调中response.body().string()只能有效调用一次,调用response.body().string()的时候数据流已经关闭了,再次调用就是提示已经closed

但是无论怎么看代码,我都只调用了一次

这他娘的就奇了怪了,于是继续查,在这篇Okhttp 使用与debug时留的大坑里面找到了原因

原来是因为我在debug的时候添加了Watchs,就是代码的监视,这里会调用一次response.body().string()。
后面需要注意,代码调试的时候表达式的监视有时候会影响代码的运行。

参考:
解决okhttp报java.lang.IllegalStateException: closed,java.lang.IllegalStateException: closed
--------------------- 
作者:老子学不动了啊! 
版权声明:本文为博主原创文章,转载请附上博文链接!