标签: apigee-baas

无法使用python-requests发布文件+数据

我可以使用curl发布文件

curl -X POST -i -F name='barca' -F country='spain' -F 
file=@/home/messi/Desktop/barca.png 'http://localhost:8080/new_org/hel/concerts'
Run Code Online (Sandbox Code Playgroud)

我可以得到(文件)

 curl -X GET -H 'Accept: image/png' 'http://localhost:8080/new_org/hel/concerts/<id or name of entity>'
Run Code Online (Sandbox Code Playgroud)

但是当我尝试使用同样的东西时requests.post,我得到了错误.有人知道为什么会这样吗?(当文件指针不在最后时遇到错误,但是当文件指针终止时,我得到了响应200但是没有发布文件)

import requests
url = 'http://localhost:8080/new_org/hel/concerts'
file = dict(file=open('/home/messi/Desktop/barca.png', 'rb'))
data = dict(name='barca', country='spain')
response = requests.post(url, files=file, data=data)
Run Code Online (Sandbox Code Playgroud)

错误:(来自usergrid)响应代码:400

{u'duration': 0,
 u'error': u'illegal_argument',
 u'error_description': u'value is null',
 u'exception': u'java.lang.IllegalArgumentException',
 u'timestamp': 1448330119021}
Run Code Online (Sandbox Code Playgroud)

https://github.com/apache/usergrid

python curl python-requests usergrid apigee-baas

3
推荐指数
1
解决办法
3159
查看次数

标签 统计

apigee-baas ×1

curl ×1

python ×1

python-requests ×1

usergrid ×1