今天在zuul上面获取返回值后,接口获取不到数据
主要代码如下:
RequestContext ctx = RequestContext.getCurrentContext();
InputStream stream = ctx.getResponseDataStream();
String body = StreamUtils.copyToString(stream, Charset.forName("UTF-8"));
//根据body做某些逻辑处理
当时以为 InputStream stream = ctx.getResponseDataStream(), 还是stream
,所以就没有做其他操作。
后来尝试了几次,接口返回的数据为空。。
解决办法:
ctx.setResponseDataStream(new ByteArrayInputStream(body.getBytes()));
原因: