Using Spring RestTemplate
, buffer request body set to false and empty body
SimpleClientHttpRequestFactory requestFactory = new SimpleClientHttpRequestFactory();
requestFactory.setBufferRequestBody(false);
requestFactory.setConnectTimeout(60_000);
RestTemplate restTemplate = RestTemplate(requestFactory);
restTemplate.exchange(uri, HttpMethod.PUT, new HttpEntity<>(httpHeaders), Void.class);
I receive 411 - Length Required
status code in response.
For some reason Spring RestTemplate does not put Content-Length: 0
header on the request.
In case I comment requestFactory.setBufferRequestBody(false);
line, it works perfect. But I need it for sending large files.
UPD: Looking into debug logs showed us, that request doesn't contain Content-Length
header.