我遇到了一个奇怪的问题,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 调用。
问题是问题不一致。我从我的本地尝试过,代码总是有效,但是当我们从 jenkins 运行相同的命令时,它对于特定的有效负载失败。我在本地尝试使用相同的 Java 版本,它始终有效。更奇怪的是,有时即使是来自同一个 Jenkins ,它也能奏效。
有没有人有任何指点?
最佳答案
对不起,我忘了更新这个答案。 我的问题原来是设置了不正确的内容类型
改变自
entity.addBinaryBody("zipFile", zipFileStream, contentTypeApplicationZip, zipFileName);
到
entity.addPart("zipFile", new ByteArrayBody(IOUtils.toByteArray(zipFileStream), zipFileName));
解决了问题。
关于java - 间歇性 NGINX 错误 : client sent invalid chunked body,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51861229/