抓住所有路線

擁有一個 catch-all 檢視可能很有用,你可以根據路徑自行處理複雜邏輯。此示例使用兩個規則:第一個規則專門捕獲/,第二個規則使用內建 path 轉換器捕獲任意路徑。path 轉換器匹配任何字串(包括斜槓)請參閱 Flask Variable-Rules

@app.route('/', defaults={'u_path': ''})
@app.route('/<path:u_path>')
def catch_all(u_path):
    print(repr(u_path))
    ...
c = app.test_client()
c.get('/')  # u_path = ''
c.get('/hello')  # u_path = 'hello'
c.get('/hello/stack/overflow/')  # u_path = 'hello/stack/overflow/'