为了账号安全,请及时绑定邮箱和手机立即绑定

允许 Flask URL 中存在多个可选参数

允许 Flask URL 中存在多个可选参数

天涯尽头无女友 2023-10-18 15:24:00
所以我有一个 Flask URL,其中有 2 个单独的参数。我想运行相同的函数,或者不带参数,只使用第一个或两个参数。如果没有设置特定值,我希望未说明的参数获得值None(而不是根本不存在)。我当前的解决方案涉及使用 3 个@app.route语句,我想知道是否有一些更有效的东西我错过了。@app.route('/URL',defaults={'Arg1':None,'Arg2':None})@app.route('/URL/<string:Arg1>',defaults={'Arg2':None})@app.route('/URL/<string:Arg1>/<string:Arg2>')谢谢!
查看完整描述

1 回答

?
噜噜哒

TA贡献1784条经验 获得超7个赞

在这种情况下,只需创建简单的路由并访问这些变量,如下request.args所示:


@app.route('/test', methods=['GET'])

def test():

    arg1 = request.args.get('arg1', None)

    arg2 = request.args.get('arg2', None)

    if arg1:

        pass  # Do something with it

    elif arg2:

        pass  # Do something with it

    else:

        pass  # do something when no args given

    return jsonify()

然后在 url 中你可以这样传递:


/test

or

/test?arg2=321

or

/test?arg1=123

or

/test?arg1=123&arg2=321


查看完整回答
反对 回复 2023-10-18
  • 1 回答
  • 0 关注
  • 60 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信