[英]Unable to upload file to REST API
我有這個 cURL 請求,我想將其轉換為 Python 請求代碼。
卷曲內容是
curl -H "X-PrettyPrint: 1"
-F 'json={"title":"PandaTest"};type=application/json'
-F "fileData=@rename.py;type=application/octet-stream"
-X POST https://cs31.salesforce.com/services/data/v39.0/connect/files/users/me
-H 'Authorization: 00Dp000000.....CqqU0.S_5r' --insecure
有關請求的更多詳細信息,請查看 SalesForce 文檔,其中包含 HTTP 請求消息 - 此處。 搜索部分Upload a file to the Files home
。
我寫的 Python 計數器部分是
import requests
files = {
"fileData" : open("rename.py", "rb"),
"json" : '{"title":"PandaTest"}'
}
headers = {
'Authorization': 'OAuth 00Dp00000000u....n3ZGuoZK2wYJRCqqU0.S_5r',
"Content-Disposition": "form-data 'fileData'"
}
r = requests.post('https://cs31.salesforce.com/services/data/v39.0/connect/files/users/me/',
data=files, headers=headers)
data = json.loads(r.text)
print data
我的請求已成功發送,但出現錯誤Missing expected "fileData" binary parameter
。我感覺我嘗試發送的請求Missing expected "fileData" binary parameter
不正確。 我到底哪里錯了?
我有一種感覺,我沒有正確處理 cURL 請求中的 2 -F
。
這一行:
"fileData" : open("rename.py", "rb"),
正在將“fileName”設置為打開文件時返回的對象。 如果您希望“fileName”成為文件的實際內容,請將該行更改為:
"fileData" : open("rename.py", "rb").read(),
這將讀取文件中的所有字節並將“fileName”設置為它們。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.