python-requests - 使用python请求上传二进制文件

标签 python-requests postman

我正在使用下面的请求库上传文件是代码:

files = {'file': open(full_file_name, 'rb')}
headers = {"content-type": 'application/x-www-form-urlencoded'}
final_resp = requests.put(loc, files=files, headers=headers)

问题是一些额外的内容已添加到文件的起点和终点。

添加到起点的内容是:
--b16010ae7646a031a5adc64ac0661e72
Content-Disposition: form-data; name="file"; filename="1016064585-65769268.csv"

添加到端点的内容是:
--b16010ae7646a031a5adc64ac0661e72--
但是当相同的文件通过postman上传时这些问题不会出现。

这是 postman 的截图enter image description here .

postman 的头是:

应用程序/x-www-form-urlencoded

最佳答案

这可能是因为您使用 multipart/form 上传文件。尝试使用如下代码所示的数据

data = open(localFilePath, 'rb').read()
headers = {
    "Content-Type":"application/binary",
}
upload = requests.put(uploadUrl,data=data,headers=headers)

关于python-requests - 使用python请求上传二进制文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54556859/

相关文章:

postman :将响应保存在全局变量上

google-chrome-app - 以散列数组作为值的 Postman chrome 扩展

python - 请求响应留下了一些数据

javascript - GET 请求适用于 Postman,但为什么不适用于 ReactJS fetch?

python - 如何在 SSH 中发送 HTTP 请求?

python - 将 curl 调用转换为 python 请求

postman - 连接到 Linkedin adAnalytics API - 参数中存在不允许的字段

javascript - 使用 postman 集合中的 Newman 脚本输出responseBody

python - 不太明白如何使用 python 请求执行谷歌服务器的请求

python - 如何使用python抓取aspx页面