我有一个Web服务器,可以充当用户和文件服务器之间的代理。用户可以将他们的文件上传到我的Web服务器,而我也将它们上传到文件服务器。我希望能够在不保存临时上载文件的情况下执行此操作,但是每次我从文件服务器收到意外的文件结尾错误时,都可以这样做。这是我的代码(我的API使用django rest框架)。
headers = {"content-type":"multipart/form; boundary={}".format(uuid.uuid4().hex)}
files = []
for f in request.FILES.getlist('file'):
files.append((f.name, open(f.file.name,'rb'), f.content_type))
files_dict = {'file': files}
r = requests.post(url, files=files, headers=headers)
答案 0 :(得分:2)
您在请求中滥用了content-type
标头。如果您使用multipart/form
中的boundary
参数,则无需手动设置files
和requests
。这就是为什么您意外收到文件错误的原因。尝试发送不带该标头的请求。
r = requests.post(url, files=files)