http post请求传文件报错 invalid character '-' in numeric literal
headers中不能带上Content-Type
参数,否则会报错invalid character '-' in numeric literal
,下面是一个案例:
-
1 url = get_base_url()
-
2 params = {}
-
3 # files={
-
4 # "data": open('//Users/zhangsan/Desktop/1058789660029222928.jpeg','rb')
-
5 # }
-
6 files=[
-
7 ('data',('1058789660029222928.jpeg',open('/Users/zhangsan/Desktop/1058789660029222928.jpeg','rb'),'image/jpeg'))
-
8 ]
-
9 headers = {
-
10 'timestamp': '1641704337',
-
11 'authorization': '1D63E6F1F8AF7BD629C684A144683226',
-
12 'Content-Type': 'application/json;utf-8'
-
13 }
-
14
-
15 resp = requests.request("POST", url, headers=headers, data=params, files=files)
-
16
-
17 print(resp.text)
如果在headers中把Content-Type
参数去掉,则会报http: no such file
的错误,但是至少文件传上去了,只是没找到文件而已
后来发现后端不是用 data 参数来接收二进制流的,而是用的 file 参数,如下图所示,将参数名改成 file 后,就能正常上传且获取到预期的response了
-
1 url = get_base_url()
-
2 params = {}
-
3 # files={
-
4 # "file": open('//Users/zhangsan/Desktop/1058789660029222928.jpeg','rb')
-
5 # }
-
6 files=[
-
7 ('file',('1058789660029222928.jpeg',open('/Users/zhangsan/Desktop/1058789660029222928.jpeg','rb'),'image/jpeg'))
-
8 ]
-
9 headers = {
-
10 'timestamp': '1641704337',
-
11 'authorization': '1D63E6F1F8AF7BD629C684A144683226',
-
12 'Content-Type': 'application/json;utf-8'
-
13 }
-
14
-
15 resp = requests.request("POST", url, headers=headers, data=params, files=files)
-
16
-
17 print(resp.text)
参考:python使用http请求POST提交上传二进制Binary文件
其他情况如果把这种错误,可能是是客户端发起请求的参数格式与服务端不一致,如服务端接收的是json格式而请求却提交的form表单。
参考:https://blog.csdn.net/likemiddle/article/details/89924441
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgeikaf
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01