Intermittent NGINX error: client sent invalid chunked body

Intermittent NGINX error: client sent invalid chunked body

我 运行 遇到了一个奇怪的问题,NGINX 间歇性地返回 400 错误日志

2018/08/15 07:08:38 [error] 3794#3794: *961526 client sent invalid chunked body, client: 10.$$.$$.$$, server: $$.api.$$.com, request: "PUT /v2/$$ HTTP/1.1", host: "$$.api.$$.com"

这个错误是什么时候出现的?

有关我如何提出请求的一些背景信息:

我正在使用 org.apache.http.impl.client.CloseableHttpClient 进行 http 调用。

问题是issue不一致。我从我的本地尝试过,代码总是有效,但是当我们 运行 来自 jenkins 的相同命令时,它对于特定的有效负载失败。我在本地尝试使用相同的 java 版本,它始终有效。更奇怪的是,有时即使是同一个詹金斯也能奏效。

有人指点一下吗?

对不起,我忘了更新这个答案。 我的问题原来是设置了不正确的内容类型

更改
entity.addBinaryBody("zipFile", zipFileStream, contentTypeApplicationZip, zipFileName);

entity.addPart("zipFile", new ByteArrayBody(IOUtils.toByteArray(zipFileStream), zipFileName));

问题已解决。