作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我现在正在做的是:
java.io.IOException: stream is closed
在第二次 readEntity() 上,因为它会在第一次读取后关闭流。
这是我正在做的:
Response response = target.queryParam("start", startIndex)
.queryParam("end", end)
.request()
.accept(MediaType.APPLICATION_XML)
.header(authorizationHeaderName, authorizationHeaderValue)
.get();
String xml = response.readEntity(String.class);
ourLogger.debug(xml);
MyClass message = response.readEntity(MyClass.class); //throws IOException
最佳答案
/你可以使用Response#bufferEntity()
,这将允许您多次读取实体流。
Response response = ...
response.bufferEntity();
String s = response.readEntity(String.class);
MyEntity me = response.readEntity(MyEntity.class);
response.close();
在您使用 readEntity()
读取实体后,读取的结果会被缓存,并可通过调用 getEntity()
获得。此信息并没有真正回答 OP 的问题,但我认为添加这些信息很有用。
关于java - 如何在 Response 上调用 readEntity 两次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47679256/
我是一名优秀的程序员,十分优秀!