Flask如何解决模棱两可的路线?

时间:2017-07-17 02:44:40

标签: flask

假设我有一个用@app.route('/api/<path:path>')修饰的函数和另一个用@app.route('/<path:path>')修饰的函数。 url路径/api/foo与两个路由匹配。 Flask是否可以保证调用哪个函数?

1 个答案:

答案 0 :(得分:1)

您可以在Flask documentation

中找到答案
  

Flask使用专为此设计的Werkzeug路由系统   按复杂程度自动排序路线。这意味着你可以   以任意顺序声明路由,它们仍然可以工作   预期。如果要正确实施,这是一项要求   基于装饰器的路由,因为装饰器可以在undefined中触发   将应用程序拆分为多个模块时的顺序。

     

使用Werkzeug路由系统的另一个设计决策是   Werkzeug中的路由会尝试确保URLs是唯一的。 Werkzeug会   与此相去甚远,因为它会自动重定向到   如果路线不明确,则规范URL