我正在尝试通过Python客户端将文件上传到Django Python服务器。

我尝试了 -

import requests

url = 'http://wings.spectrumserver/sdm/lists'
files = {'file': open('file.ext', 'rb')}
r = requests.post(url, files=files)

但是某种程度上行不通。 No error but no output/upload as well

我通过浏览器和命令行成功上传文件。

curl -i --form docfile=@localfilename http://wings.spectrumserver/sdm/lists

请建议该怎么办?

我对卷曲和python了解不多 pycurl 因为它已经与卷曲一起工作。

请参考有关问题的更多详细信息 -

使用卷发上传到Django服务器

有帮助吗?

解决方案

我认为这里的问题是文件元素的名称。它应该是 docfile. 。在卷曲示例中,您已将其传递给 docfile 但是在Python脚本中,您将其留给 file.

更改此行:

files = {'file': open('file.ext', 'rb')}

为此:

files = {'docfile': open('file.ext', 'rb')}

其他提示

当您查看视图中的请求时,您可能会在request.files ['file']中看到它,因为我在标题文件中的设置不好,因此有问题。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top