Flask只能看到curl发送的多个参数中的第一个参数。

11

我正在使用curl向一个期望多个查询参数的Flask路由发出请求。然而,日志仅显示url中的第一个参数,而Flask看不到第二个参数。出了什么问题?

@app.route('/path', methods=['GET'])
def foo():
    print request.args.get('param2')
    req = request.args.items()
    print req
curl http://localhost:5000/path?param1=1&param2=2
127.0.0.1 - - [01/Jun/2015 21:35:10] "GET /path?param1=1 HTTP/1.1" 200 -
None
[('param1', u'1')]

我正在导入:从应用程序中导入应用程序 从Flask中导入Flask,请求,jsonify,响应,stream_with_context,make_response 从flask.ext.sqlalchemy中导入SQLAlchemy 从sqlalchemy中导入列,整数,字符串,日期时间,浮点数 导入cStringIO 导入csv 导入datetime - MakleBirt
你是否正在使用curl进行请求? - dirn
5
如果你在使用curl命令,那么需要将url放在引号内。应该是这样的curl "localhost:5000/path?param1=1&param2=2"。在shell中,&符号用于分离进程,它的行为与你期望的不同。 - Bidhan
1
哇!谢谢Bidhan!那节省了很多时间。 - MakleBirt
哈哈,没问题。我之前也遇到过类似的问题,让我感到很沮丧很长一段时间。很高兴你解决了这个问题。祝你好运。 - Bidhan
显示剩余4条评论
网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接