天涯盡頭無(wú)女友
2023-10-18 15:24:00
所以我有一個(gè) Flask URL,其中有 2 個(gè)單獨(dú)的參數(shù)。我想運(yùn)行相同的函數(shù),或者不帶參數(shù),只使用第一個(gè)或兩個(gè)參數(shù)。如果沒(méi)有設(shè)置特定值,我希望未說(shuō)明的參數(shù)獲得值None(而不是根本不存在)。我當(dāng)前的解決方案涉及使用 3 個(gè)@app.route語(yǔ)句,我想知道是否有一些更有效的東西我錯(cuò)過(guò)了。@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貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超7個(gè)贊
在這種情況下,只需創(chuàng)建簡(jiǎn)單的路由并訪問(wèn)這些變量,如下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
添加回答
舉報(bào)
0/150
提交
取消