加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 改造2.0b2:如何从响应中获取InputStream?

发布时间:2020-12-14 05:32:48 所属栏目:Java 来源:网络整理
导读:我正在使用Retrofit 2.0b2.得到响应后,我尝试从响应中获取一个InputStream: ResponseJsonNode response = call.execute();InputStream is = response.raw().body().byteStream(); 但应用程序不断投掷: java.lang.IllegalStateException: Cannot read raw r
我正在使用Retrofit 2.0b2.得到响应后,我尝试从响应中获取一个InputStream:
Response<JsonNode> response = call.execute();
InputStream is = response.raw().body().byteStream();

但应用程序不断投掷:

java.lang.IllegalStateException: Cannot read raw response body of a converted body.
        at retrofit.OkHttpCall$NoContentResponseBody.source(OkHttpCall.java:184)
        at com.squareup.okhttp.ResponseBody.byteStream(ResponseBody.java:43)
        at ...

尽管响应正确返回.我在这里做错了什么?

解决方法

如果你想要原始流,请告诉改装返回一个OkHttp ResponseBody.
Response<ResponseBody> response = call.execute();
InputStream is = response.body().byteStream();

请记住更新您的界面.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读