python flask通过post和url发送数据

时间:2015-02-20 19:36:29

标签: python api rest post flask

我有一个关于通过CURL通过CURL发送数据并通过URL发送数据的问题。更一般地说,我有一个烧瓶路线

@app.route('/create', methods=['POST'])
def clone:
   ...

如何使用网址发送数据?我想做这样的事情:

<my-server>:port/create/arg1/arg2/arg3

我发现你可以做点什么

@app.route('/create', methods=['POST'])
@app.route('/create/<op>/<source>/<target>', methods=['GET'])    
def clone(op = None, source = None, target = None):
    ...

哪个会奏效。这是一个好方法吗?

1 个答案:

答案 0 :(得分:3)

要访问实际查询字符串(?之后的所有内容),请使用:

from flask import request

@app.route('/create', methods=['POST'])
    def clone:
        return request.query_string

要访问已知的查询参数:

from flask import request

@app.route('/create', methods=['POST'])
    def clone:
        user = request.args.get('user')

如果您希望使用/arg1/arg2/arg3发送的变量,请使用:

@app.route('/create/<arg1>/<arg2>/<arg3>', methods=['POST'])
    def clone(arg1, arg2, arg3):
        ...