python - 上传和上传文件而不使用 python 请求保存
问题描述
我有一个 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)
解决方案
您在请求中滥用了content-type
标头。无需手动设置multipart/form
,boundary
如果您使用files
来自requests
. 这就是为什么您会收到意外的文件结束错误。尝试在没有该标头的情况下发送您的请求。
r = requests.post(url, files=files)
推荐阅读
- php - 如何将mysql数据类型分配给php var
- date - 在coldfusion中将分钟转换为小时和分钟
- javascript - 从服务器端渲染的 React 应用程序中删除渲染阻塞样式
- azure - 如何使用 Azure AD 访问和筛选 JWT 令牌中的组?
- android - 在 Android TV 中为所选卡片添加边框
- android - 调用 RecyclerView 时应用程序崩溃说 PID: 32217-Binary XML 文件错误
- vb.net - vb 10下如何写CURL
- ruby-on-rails-5 - 如何为单个项目使用 2 个本地主机
- javascript - 浏览器警报弹出窗口未显示在 IE 的当前窗口中
- javascript - Javascript onClick() 需要多次点击