我使用python库flask开发了一个简单的restapi。下面是我正在做的一个例子:from flask import Flask, request
import json
app = Flask(__name__)
@app.route("/")
def hello():
json_arg = json.loads(request.args.get("json_arg", None))
non_json_arg = request.args.get("non_json_arg", None)
return "Hello, your json arg is: %s and your non_json_arg is %s"%(json_arg, non_json_arg)
if __name__ == '__main__':
app.run(debug=True)
为了测试我的代码,我编写了一个python客户机:
^{pr2}$
这很好,输出是:Hello, your json arg is: [{u'1': 1.4, u'0': 1.3}, {u'1': 40.5, u'0': 5.3}] and your non_json_arg is some_arg
出于测试原因,我想对cURL做同样的测试,目前为止我测试的是:curl -X GET --data '{"json_arg": [ { "0": 1.3, "1": 1.4 }, { "0": 5.3, "1": 40.5 } ], "non_json_arg":"some_arg"}' http://localhost:5000
但这会返回一个错误:....
>> json_arg = json.loads(request.args.get("json_arg", None))
TypeError: expected string or buffer
我已经测试了cURL的许多其他参数,但是我找不到这个简单问题的答案:
如何使用json参数向API发送GET请求?