我试图上传一个文件到远程网站,使用CURL脚本,它工作得很好
curl -X POST -H "Content-Type: multipart/form-data" -H "Authorization: Basic cWERF0ZWNoQXBpOmYxZDhmNzJkNDAwNGRjNzZlMTU0NjU4MTQwGRNzc4NTjM0" -F "data=@file.dat" http://url/rest/files/upload
但是当我试图使用Python请求库时,我遇到了一个错误:
600
网址:jvnet.mimepull.MIMEParsingException:缺少起始边界
我的python代码:
import requests
headers = {
'Content-Type': 'multipart/form-data',
'Authorization': 'Basic cWERF0ZWNoQXBpOmYxZDhmNzJkNDAwNGRjNzZlMTU0NjU4MTQwGRNzc4NTjM0',}
files = {'file.dat':open('file.dat','rb')}
response = requests.post('http://url/rest/files/upload',headers=headers,files=files)
print response.text
您必须避免
headers
字典中的'Content-Type'
。这种方式: 在在这种特殊情况下(如果指定了参数
^{pr2}$files
),库requests
会自行添加Content-Type: multipart/form-data
,但在末尾指定了边界。例如,标题如下所示: 在通过将
'Content-Type': 'multipart/form-data'
添加到headers参数中,边界将被删除。在相关问题 更多 >
编程相关推荐