Python请求http错误600

2024-10-03 11:23:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图上传一个文件到远程网站,使用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

Tags: formresthttpurldatabasictypefiles
1条回答
网友
1楼 · 发布于 2024-10-03 11:23:57

您必须避免headers字典中的'Content-Type'。这种方式: 在

import requests
headers = {'Authorization': 'Basic cWERF0ZWNoQXBpOmYxZDhmNzJkNDAwNGRjNzZlMTU0NjU4MTQwGRNzc4NTjM0',}     
files = {'file.dat':open('file.dat','rb')}
response = requests.post('http://url/rest/files/upload',headers=headers,files=files)

在这种特殊情况下(如果指定了参数files),库requests会自行添加Content-Type: multipart/form-data,但在末尾指定了边界。例如,标题如下所示: 在

^{pr2}$

通过将'Content-Type': 'multipart/form-data'添加到headers参数中,边界将被删除。在

相关问题 更多 >