假设我有一个用@app.route('/api/<path:path>')
修饰的函数和另一个用@app.route('/<path:path>')
修饰的函数。 url路径/api/foo
与两个路由匹配。 Flask是否可以保证调用哪个函数?
答案 0 :(得分:1)
您可以在Flask
documentation:
Flask
使用专为此设计的Werkzeug
路由系统 按复杂程度自动排序路线。这意味着你可以 以任意顺序声明路由,它们仍然可以工作 预期。如果要正确实施,这是一项要求 基于装饰器的路由,因为装饰器可以在undefined中触发 将应用程序拆分为多个模块时的顺序。使用
Werkzeug
路由系统的另一个设计决策是Werkzeug
中的路由会尝试确保URLs
是唯一的。Werkzeug
会 与此相去甚远,因为它会自动重定向到 如果路线不明确,则规范URL
。