使用Python的post请求请求lib返回状态405

做梦

我正在使用Python中的请求库将文件上传到服务器。我阅读了其文档和一些stackoverflow问题,并实现了以下代码:

url = "http://example.com/file.csv"
id = "user-id"
password = "password"
headers = {'content-type': 'application/x-www-form-urlencoded'}

with open(file_path, 'rb') as f:
    response = requests.post(url=url, files={'file':f}, auth=HTTPBasicAuth(username=id, password=password),headers=headers)

但是此代码无法正常工作,response.status_code返回405,response.reason返回Method Not Allowed当我在终端上使用curl命令上传文件时,它可以正常工作并且文件被上传:

curl -u user-id:password -T file/path/on/local/machine/file.csv "http://example.com/file.csv"

有人可以帮忙吗?

培养

相关问题在这里实际上,curl --upload-file执行PUT不是POST如果要模仿卷曲的作用,则可以尝试:

with open(file_path, 'rb') as f:
    response = requests.put(url=url, files={'file':f}, auth=HTTPBasicAuth(username=id, password=password), headers=headers)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

状态码 405 问题..Alamofire POST 请求...

POST 请求:返回状态报告

使用 Python 请求的响应 405

使用Java RestAssured创建POST请求,返回状态码422

我的ajax请求在laravel上返回状态错误405

Ionic + Angular POST请求返回状态404

Python POST请求返回401

用错误的凭据POST请求返回405,而不是401

405 - 请求GET和POST

为什么此ASP.NET Core POST请求返回“ 405(不允许使用方法)”?

通过请求(Python)的POST请求不返回数据

SilverStripe Sapphire 对 POST 请求的功能测试总是返回 404 状态

从邮递员发送 post 请求返回状态码 415

在来自状态的 post 请求中发送日期总是返回 NULL

HTTP状态405-具有Spring Security的Spring MVC不支持请求方法'POST'

Spring MVC上传文件-HTTP状态405-不支持请求方法“ POST”

HTTP状态405-不支持请求方法“ POST”(Spring MVC)

Patebin api在python中为requests.post返回“错误的API请求,使用POST请求,而不是GET”?

使用python请求保持登录状态

Android SOAP请求返回HTTP响应405

405 POST请求出错(AngularJS $ http)

Jersey Post 请求 405 Json 消耗错误

405:在 POST 请求中找不到方法

Python 请求 - 调试 POST 请求

使用 Python 请求时,Azure DevOps REST API 返回 HTTP 状态 203

jQuery ajax请求在laravel应用中返回405(不允许POST)

使用 Python 请求向本地主机发出 POST 请求

Python 请求 GET 返回 200,但 POST 返回 404

Python 请求返回状态 200,但不执行预期操作