如何使用 Apache http 客户端发送没有内容和 Content-Length header 的 PUT 请求?

Howto send PUT request without content and Content-Length header with Apache http client?

我想测试(通过自动化测试)服务器(和所有代理 in-the-middle)如何响应 PUT 请求 without body 和Content-Length header.

类似于 curl 的作用

curl -XPUT http://example.com

使用 Apache HTTP 客户端 (4.5.13)

但是如果我没有指定 body,它看起来总是添加 Content-Length header。 有什么方法可以用 Apache HTTP 客户端做到这一点吗?

已经试过了(没有运气)

final HttpPut request = new HttpPut(url);
request.removeHeaders("Content-Length");

使用请求拦截器修改标准协议处理器生成的请求

CloseableHttpClient httpClient = HttpClients.custom()
        .addInterceptorLast((HttpRequestInterceptor) (request, context) ->
                request.removeHeaders(HttpHeaders.CONTENT_LENGTH))
        .build();
HttpPut httpPut = new HttpPut("http://httpbin.org/put");
httpClient.execute(httpPut, response -> {
    EntityUtils.consume(response.getEntity());
    return null;
});