2011-08-16 3 views
1

私は、multipart/form-dataを介してPythonからJenkinsにファイルをPOSTしようとしています。リクエストボディは、次のようになりますJenkinsへのファイルのポストは失敗します

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

PHhtbD4NCjwveG1sPg0K 

--===============1849003312==-- 

これは、ジェンキンスさんは、しかし、その端に例外を発生させ、最も関連性の高いビットはその従ってください:

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) 

私のPOSTリクエストで何が問題なのですか?

EDIT:次のように リクエストヘッダは次のとおりです。

のContent-Type:

multipart/form-data; boundary="===============1849003312=="  

MIME-バージョン:

1.0 
+1

POSTリクエストの 'Content-Type'ヘッダはどうでしょうか?その価値も記入してください。重要です。 –

+0

@Wladimir Palant Done – aknuds1

+0

'Content-Type'ヘッダーの境界がPOST本体で使用されている境界と一致しません。 –

答えて

0

私はContent-Disposition: file;を置き換えてくださいと信じてContent-Disposition: attachment;FileUploadBaseのソースコードには "file"はなく、RFC 2183はcontent-dispositionの値として "file"をリストしていません。

+0

ありがとうございます、明日お試しください。 – aknuds1

+0

Content-Dispositionの '添付ファイル'を 'ファイル'に変更しようとしましたが、実際には違いはありません(同じ例外が発生します)。 FileUploadBase.javaソースも見ると、スローされる例外に関するコンテンツ処理の問題のようには見えません。 – aknuds1

関連する問題