Python 向Jenkins发布文件失败

Python 向Jenkins发布文件失败,python,http-post,jenkins,multipartform-data,Python,Http Post,Jenkins,Multipartform Data,我试图通过多部分/表单数据从Python向Jenkins发布一个文件。请求主体如下所示: --===============1849003312== Content-Type: application/octet-stream Content-Transfer-Encoding: base64 Content-Disposition: file; name="file0"; filename="meta.xml" PHhtbD4NCjwveG1sPg0K --===============1

我试图通过多部分/表单数据从Python向Jenkins发布一个文件。请求主体如下所示:

--===============1849003312==
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64
Content-Disposition: file; name="file0"; filename="meta.xml"

PHhtbD4NCjwveG1sPg0K

--===============1849003312==--
这会导致Jenkins在其末尾引发异常,但最相关的位如下所示:

Exception: <br>Stacktrace: <pre>org.apache.commons.fileupload.FileUploadException: Stream ended unexpectedly
   at org.apache.commons.fileupload.FileUploadBase.parseRequest(FileUploadBase.java:381)
   at org.apache.commons.fileupload.servlet.ServletFileUpload.parseRequest(ServletFileUpload.java:126)
   at org.kohsuke.stapler.RequestImpl.parseMultipartFormData(RequestImpl.java:767)
   at org.kohsuke.stapler.RequestImpl.getSubmittedForm(RequestImpl.java:782)
MIME版本:


我相信内容配置:文件;应替换为内容处置:附件;。的源代码没有提到文件,也没有将文件列为内容处置的值。

POST请求的内容类型标头如何?请同时发布其值,这很重要。内容类型标题中的边界与发布正文中使用的边界不匹配。@Wladimir Palant Oops,这是因为每次运行都会重新生成它。我将同时更新它们。您能发布创建请求的完整代码吗?我尝试将“文件”更改为“附件”以进行内容处置,但没有任何区别,实际上发生了相同的异常。另外,从FileUploadBase.java源代码来看,抛出异常的内容处理似乎并不重要。
multipart/form-data; boundary="===============1849003312=="    
1.0