2016-10-07 8 views
0

私はcurl PUT -F "[email protected]"の使用をPythonの要求を使って再現しようとしています。 私が使用するために必要だコンテンツの種類は次のとおりです。multipart/form-data 私は次のようにさまざまなバリエーションを試してみました:方法の全てにおいてPythonのリクエストを使ってフォームをカールとして投稿する方法PUT -F

r = requests.put(url, headers=headers, files={'file': (full_filename, open(full_filename, 'rb'), content_type)}, verify=False, stream=True)

r = requests.put(url, headers=headers, data={'file': (full_filename, open(full_filename, 'rb'), content_type)}, verify=False, stream=True)

r = requests.put(url, headers=headers, params={'file': (full_filename, open(full_filename, 'rb'), content_type)}, verify=False, stream=True)

は私が'Content-Type': 'multipart/form-data'を持ってみました私のヘッダーに。

しかし、上記のすべてについて、私は応答として400を取得します。

私はstackoverflowの周りにいくつかの質問を見たが、答えのどれも私の質問に答えたので、私は新しいものを開いています。

答えて

0

https://stackoverflow.com/a/17438575/1659322のおかげで、私はそれを解決することができました。私は非常に重要だと私は彼の答えをここで引用しています:

あなたは決してこのヘッダーを設定するべきではありません。ヘッダーは境界線で正しく設定されます。そのヘッダを設定した場合、サーバは期待していた境界(ヘッダに追加されているため)を知らないでしょう。カスタムContent-Typeヘッダーを削除しても問題ありません。

私はリクエストが大好きですが、これは私にとって非常に混乱している実装です。

関連する問題