Python请求发送具有特定部分的文件

时间:2018-02-28 03:35:04

标签: python python-requests

我正在尝试通过请求库发送文件,但接收方需要一个具有指定名称的部分(接收器术语)。我有类似的东西......到目前为止:

filePath = os.path.join( GetDownloadFolder(), fileName )
files    = {'upload': open( str( filePath ),'rb')}    
response = requests.post( url, headers=header, files=files, verify=False )

GetDownloadFolder()只获取文件所在的位置。标题包含帐户信息和内容类型。上面的代码与服务器通信,不再抱怨无法找到该文件。我从服务器收到错误,指出必须存在具有特定名称的部件。我尝试使用data = values参数:

values      = {'upload': ''}

遗憾的是,这并没有解决问题。任何想法都将不胜感激。

1 个答案:

答案 0 :(得分:0)

哦,我的...经过一些调试后我发现了。接收器出错了。我自己将内容类型设置为Content-Type:multipart / form-data。

当我发送文件时,我收到一条错误消息,指出我错过了一个命名部分。我删除了内容类型的设置,并且请求填写了这样的标题。

内容类型:multipart / form-data;边界= 3645c8b2b8f74e1a8db8a85c54225964

此时......收到的人接受了数据。所以边界很重要。可能是收到的内容的大小或一些这样的细节。