マルチパート/混合コンテンツを含むサーバーにファイルを送信する必要があります。 exempleについて:マルチパート/ミックスをCURLとpreifined boudaryでどう送信するのですか?
curl -d @/tmp/exemple.file -XPOST http://myServer:8000/multipartService -H "content-type: multipart/Mixed ; boundary=----------------------------1b479dca9c3e"
しかし、サーバは成功しません:
------------------------------1b479dca9c3e
Content-Disposition: form-data; name="one_part"
Content-Type: text/xml; charset=utf-8
XX-Project-Type: METADATA
<?xml version="1.0" encoding="utf-8"?>
<My_MSG version="1">
<MSG date="2014-08-20T18:39:59.154326+00:00">
<METADATA mess_id="sd1212sd05AZ">
<CONVERSION>
<FILE name="foo.bar"/>
<FILE name="ping.pong"/>
<FILE name="abc.def"/>
</CONVERSION>
</METADATA>
</MSG>
</My_MSG>
------------------------------1b479dca9c3e
Content-Disposition: form-data; name="one_part"
Content-Type: text/xml; charset=utf-8
XX-Project-Type: METADATA
<?xml version="1.0" encoding="utf-8"?>
<My_MSG version="1">
<MSG date="2015-08-20T19:39:59.154326+00:00">
<METADATA mess_id="az987456321">
<CONVERSION>
<FILE name="bar.foo"/>
<FILE name="pong.ping"/>
<FILE name="def.abc"/>
</CONVERSION>
</METADATA>
</MSG>
</My_MSG>
------------------------------1b479dca9c3e--
あなたはマルチパートboudaryはすでにので、私は以下のコマンドを使用しますCURLでそれを送信するために、送信するファイルに定義されて見ることができるように部品を扱う。私は、サーバーのログを持っていないが、私はサーバーに送信されたかを確認するのtcpdumpを実行さしあたり:
スペースや改行が送信要求で削除され、それができたようですリクエストの内容はサーバーによって複数の/混合されたものとして処理できないことを説明してください。
マルチパート/混合形式のファイルを送信する方法は知っていますか? hanshenrikため
編集:
コンテンツタイプのヘッダーを削除し、自動的にカールを生成させます。それはうまくいくはずです。私は実際にカールがあなたのカスタムヘッダーを解析し、境界を採用したことに驚いています。また、ドロップします-XPOST – hanshenrik
@hanshenrik私の編集を参照してください、application/x-www-form-urlencodedへのデフォルトのcontent-typeフォールバック:/ – Fractaliste