Не удалось добавить заголовки ответов в потоковый ответ RestTemplate

В моем приложении с весенней загрузкой у меня есть конечная точка GET. Когда мы вызываем эту конечную точку GET, приложение отправляет запрос GET в другую службу с помощью RestTemplate и возвращает тот же файл ответа, что и ответ на запрос GET. С помощью приведенного ниже кода я могу получить файл ответов. Но мне нужно установить те же заголовки, которые я получил для запроса RestTempate. Как это сделать.

      @GetMapping(value = URL_CONTENT_ID, produces = {MediaType.APPLICATION_OCTET_STREAM_VALUE, APPLICATION_ZIP_VALUE,
    MediaType.TEXT_HTML_VALUE})
@ControllerLogging
public ResponseEntity<StreamingResponseBody> getContentFile(@PathVariable String contentId) {

    StreamingResponseBody responseBody = outputStream -> {
        getContentFile(outputStream, contentId);
        outputStream.close();
    };

    return ResponseEntity.ok()
        .body(responseBody);

}

public void getContentFile(OutputStream outputStream, String nodeId) {

    RequestCallback requestCallBack = request -> {
        HttpHeaders headers = new HttpHeaders();
        authenticationHelper.apply(headers::set);
        request.getHeaders().addAll(headers);
    };

    ResponseExtractor<OutputStream> responseExtractor = clientHttpResponse -> {
        InputStream inputStream = clientHttpResponse.getBody();
        StreamUtils.copy(inputStream, outputStream);
        return null;
    };

    restTemplate.execute(dcmUrl + nodeId, HttpMethod.GET, requestCallBack, responseExtractor);
}

0 ответов

Другие вопросы по тегам