Python请求等效于以下curl代码

时间:2017-08-20 11:57:54

标签: python curl python-requests

请问您可以告知Python请求相当于下面的curl代码以将文件上传到诀窍?特别是在-F选项之后的部分。谢谢

curl -X POST "https://api.knack.com/v1/applications/YOUR-APP-ID/assets/file/upload" \
  -H 'content-type: multipart/form-data' \
  -H 'x-knack-rest-api-key: YOUR-API-KEY' \
  -F "files=@/path/to/your/file.txt"

1 个答案:

答案 0 :(得分:0)

requests.postfilesheaders一起使用。您的curl代码相当于:

url = "https://api.knack.com/v1/applications/YOUR-APP-ID/assets/file/upload"
files = {'files':open('/path/to/your/file.txt', 'rb')}
headers = {'x-knack-rest-api-key': 'YOUR-API-KEY'}
r = requests.post(url, headers=headers, files=files)

使用files参数时,requests会自动创建必要的标题,因此您无需在headers中拥有“Content-Type”或“Content-Length”。< / p>