0
 $ curl -F myfile=@myfilename -F 'data={"title":"some title","otherinfo" : "aabcdef"}' https://someurl

上記は、ターミナルから実行するための有効で正しい方法です。

この方法でリクエストを使用してPythonでこれを実装しようとしました:

files = {'myfile': open('myfilename', 'rb')}
data = {}

data['data'] = {
    'title' : 'some title',
    'otherinfo' : 'other info'
}

r = requests.post(url, files=files, data=data, auth=auth)

ここで、データが宛先に適切に到達していません。どこが間違っていますか?

4

1 に答える 1

0

引数を使用する-Fと、curlはContent-Typeset toでデータを送信しますが、パラメータRequestsをmultipart/form-data使用すると、settoを使用します。権利を使用してデータを送信するようにリクエストに指示する必要があります。Pythonでリクエストを含む「multipart/form-data」を送信する方法を参照してください。これを行う方法。dataContent-Typeapplication/x-www-form-urlencodedContent-Type

于 2012-11-09T22:29:12.463 に答える