java.io.IOException: Attempted read from closed stream.
at org.apache.http.impl.io.ContentLengthInputStream.read(ContentLengthInputStream.java:165)
at org.apache.http.conn.EofSensorInputStream.read(EofSensorInputStream.java:135)
at org.apache.http.conn.EofSensorInputStream.read(EofSensorInputStream.java:148)
at com.huawei.isap.console.server.service.httpsproxy.impl.HttpUtils.copyStreamData(HttpUtils.java:195)
原因是流只可以被读一次,第一次读完毕就已经被关闭,所以第二次读取的时候就是失败的。
// String s = EntityUtils.toString(entity, "UTF-8");
// System.out.println(s);
if (null != entity) {
try (final InputStream inputStream = entity.getContent();
final OutputStream outputStream = response.getOutputStream()) {
if (inputStream != null) {
copyStreamData(inputStream, outputStream);
}
} catch (IOException e) {
log.info("", e);
e.printStackTrace();
}
}
被注释的代码之前是放开的,注释时候不在报错。