【发布时间】:2015-06-04 23:38:18
【问题描述】:
我正在向我的 Bottle 服务器发布一个文件,如下所示:
$ echo hello > foo.txt
$ curl -H "Content-Type: application/json" -X POST -d @foo.txt \
http://localhost:8089/api/noun
服务器
#!/usr/bin/env python
from bottle import Bottle, request
app = Bottle()
@app.post('/api/noun')
def add_noun():
return {'files': request.POST.allitems()}
if __name__ == '__main__':
app.run(port=8089)
使用request.POST.allitems()、request.POST.keys() 或类似的方法似乎是一种访问有效负载的骇人听闻的方式。 request.files 等效为空。
目前,我将所有内容都放入 StringIO 对象并逐步迭代。
有没有办法直接访问 IO 对象,所以我可以使用next(it) 之类的?
【问题讨论】:
-
只是好奇:你为什么使用
application/json(当你不发送json时)?
标签: python curl request http-post bottle