我使用 python 包请求进行多部分 POST。我使用 xlrd 更改 Excel 文件中的一些值,将其保存,然后在多部分 POST 中发送。当我在我的 Mac 上本地运行它时,这工作正常,但是当我将代码放在远程机器上并发出相同的请求时,正文内容类型为空白,而本地正文内容类型为 application/vnd.ms-excel。所以我的问题是,有没有办法使用 python 请求强制执行内容类型,以便在这种情况下正文内容类型是 application/vnd.ms-excel。抱歉不能发布任何代码,因为我在这台机器上没有它。
问问题
2523 次
2 回答
8
该files
参数接受元组键的字典,格式如下:
files = {'name': (<filename>, <file object>, <content type>, <per-part headers>)}
在您的具体情况下,您可以这样写:
files = {'file': ('filename.xls', open('filename.xls'), 'application/vnd.ms-excel', {})}
那应该可以正常工作。
于 2013-11-14T09:52:59.680 回答
0
我相信您可以使用 headers 参数,例如
requests.post(url, data=my_data, headers={"Content-type": "application/vnd.ms-excel"})
于 2013-11-13T22:52:12.863 回答