添加RestTemplate Bean配置
@Bean
public RestTemplate restTemplate() {
RestTemplate restTemplate = new RestTemplate();
restTemplate.setRequestFactory(new BufferingClientHttpRequestFactory(restTemplate.getRequestFactory()));
restTemplate.getInterceptors().add((httpRequest, bytes, clientHttpRequestExecution) -> {
log.info("URL:{}", httpRequest.getURI().toString());
log.info("METHOD:{}", httpRequest.getMethodValue());
log.info("PARAMS:{}", new String(bytes));
ClientHttpResponse response = clientHttpRequestExecution.execute(httpRequest, bytes);
try (ByteArrayOutputStream ops = new ByteArrayOutputStream()) {
StreamUtils.copy(response.getBody(), ops);
log.info("RESULT:{}", ops.toString());
} catch (Exception e) {
log.error("复制流异常", e);
}
return response;
});
return restTemplate;
}