2017-11-06 16 views
0

このAPIリクエストの例が見つかりました。残念ながら、APIに画像をアップロードする方法は他にありませんでした。 私はPythonに慣れていないので、私はcURLコマンドで同じことをする方法を理解しようとしています。画像付きPythonリクエストをcURLに変換する

import requests 

auth_headers = { 
    'app_id': 'your_app_id', 
    'app_key': 'your_app_key' 
} 

url = 'https://XXXXXXX' 
files = { 
    'source': open('media/test.jpg') 
} 
data = { 
    'timeout': 60 
} 
response = requests.post(url, files=files, data=data, headers=auth_headers) 

私はpythonコンバーターにcURLを試してみましたが、ファイルでビルドする方法がわかりません。

最後に、私はJAVAでリクエストを行いたいと思いますが、私がcURLでリクエストを知っていれば分かります。

誰でも私を助けることができます。

答えて

1

これはそれを行います。

#!/bin/bash 
args=(
    -H 'app_id: your_app_id' 
    -H 'app_key: your_app_key' 
    -F '[email protected]/path/to/file' 
    -F 'timeout=60' 
    'http://httpbin.org/post' 
) 
curl "${args[@]}" 

や、ワンライナーとして:

curl -H 'app_id: your_app_id' -H 'app_key: your_app_key' -F '[email protected]/path/to/file' -F 'timeout=60' 'http://httpbin.org/post' 

使用-Hフォームフィールドを指定するには、ヘッダフィールド(フィールドごと繰り返す)と-Fを指定します - key=valueペア、または[email protected]ペアのいずれかです。 -Fを使用する場合、POSTメソッドがデフォルトであり、Content-Typemultipart/form-dataです(ただし、これもオーバーライドできます)。

+1

完璧、たくさんありがとうございます。また、multipart/form-dataヒントのおかげで – fsulser

関連する問題