我有这段代码python requests代码段(部分)将文件和一些数据上传到服务器:
files = [("FileData", (upload_me_name, open(upload_me, "rb"), "application/octet-stream"))]
r = s.post(url, proxies = proxies, headers = headers, files = files, data = data)
因为这会将整个文件读入内存,这在某些情况下可能会导致一些问题。从requests documentation开始,我知道它支持这样的流媒体上传:
with open('massive-body') as f:
requests.post('http://some.url/streamed', data=f)
但是我不知道如何更改原始代码以支持流式传输。有人可以帮忙吗?
感谢。
答案 0 :(得分:4)
目前请求不支持执行包含比单个文件更多数据的流式上传。您在data
上发送POST
这一事实意味着您正在进行多部分文件上传,目前请求并未向您提供任何流式传输方式。