我有以下代码:
r = requests.put(
config.get('webdav', 'url') + file_name,
auth=(
config.get('webdav', 'username'),
config.get('webdav', 'password')
),
files={
"files": open(os.path.expanduser(charges_file_path), 'rb')
}
)
这很简单。它只需向webdav服务器调用PUT
请求,并将文件(纯文本)中的数据推送到服务器。你知道吗
它是有效的,除了一个奇怪的问题(或者如果我只是遗漏了一些小问题,可能就不那么奇怪了)。当我对文件执行GET
操作时,或者直接在服务器上查看文件时,文件本身包含头信息:
--55e72d74a10b423590cd4faa68212192 Content-Disposition: form-data; name="files"; filename="test_file6.txt"
(file_data)
--55e72d74a10b423590cd4faa68212192--
我一直找不到解决这个问题的理由或方法。当我从命令行卷曲文件时,它工作正常。你知道吗
有什么想法吗?你知道吗
我不太熟悉Python
requests
的工作原理,但是在阅读了一些文档并发现有人在向Zendesk(this post)发送文件时遇到了类似的问题之后,您可能希望尝试在请求中使用data
(或json
)参数而不是files
。另外,如果这里适用的话,也可以附加一个params
文件名,就像我链接的帖子一样。你知道吗要做的另一件事是在这个请求上放置一个
Content-Type
头。你知道吗即
相关问题 更多 >
编程相关推荐