间歇性NGINX错误:客户端发送了无效的分块正文

时间:2018-08-15 14:59:03

标签: java http nginx http-1.1

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

  

2018/08/15 07:08:38 [错误] 3794#3794:* 961526客户端发送了无效的分块正文,客户端:10。$$。$$。$$,服务器:$$。api。$$ .com,请求:“ PUT / v2 / $$ HTTP / 1.1”,主机:“ $$。api。$$。com”

何时出现此错误?

关于我如何提出请求的一些背景:

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

问题是问题不一致。我从本地尝试,该代码始终有效,但是当我们从jenkins运行相同的命令时,对于特定的有效负载它将失败。我在本地尝试了相同的Java版本,它始终可以正常工作。更奇怪的是,有时甚至使用相同的詹金斯也能做到这一点。

有人有指针吗?

1 个答案:

答案 0 :(得分:1)

很抱歉,我忘记更新此答案。 我的问题原来是设置了错误的内容类型

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

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

解决了这个问题。