Вы можете написать перехватчик для дополнительной обработки запросов и ответов, проходящих через ваше приложение.
Если вы используете spring
, это очень легко реализовать. Вот пример:
@Component
public class RestInterceptor implements ClientHttpRequestInterceptor {
@Override
public ClientHttpResponse intercept(HttpRequest request, byte[] body,
ClientHttpRequestExecution execution) throws IOException {
traceRequest(request, body);
ClientHttpResponse response = execution.execute(request, body);
traceResponse(response);
return response;
}
private void traceRequest(HttpRequest request, byte[] body) throws IOException {
//track request here
}
private void traceResponse(ClientHttpResponse response) throws IOException {
//track response here
}
}
Теперь зарегистрируйте его в своем шаблоне отдыха
restTemplate.setInterceptors(Collections.singletonList(new RestInterceptor ()));