今天在做項目網絡請求用的Okhttp+retrofit,原本是沒有問題的,後來加了攔截器以後,前台回調失敗
**onError:java.lang.IllegalStateException: closed**
代碼如下
Response originalResponse = chain.proceed(request);
String body=originalResponse.body().string();
return originalResponse;
找了好久沒有找到問題。最後發現說,body隻能讀取一次,讀取完以後就關閉掉了。
解決辦法:
return originalResponse.newBuilder()
. body(ResponseBody.create(MediaType.parse("UTF-8"), body))
.build();