Python Flask view函数捕获除一个小子集之外的所有URL

Python Flask view函数捕获除一个小子集之外的所有URL,python,flask,Python,Flask,我正在用烧瓶写一份委托书。代理应该转发除一个小子集之外的所有请求,其中应该执行一些额外的检查。 因为有各种各样的路线,我在文档中找到了这个例子 要匹配所有URL,请执行以下操作: from flask import Flask app = Flask(__name__) @app.route('/', defaults={'path': ''}) @app.route('/<path:path>') def catch_all(path): return 'You want

我正在用烧瓶写一份委托书。代理应该转发除一个小子集之外的所有请求,其中应该执行一些额外的检查。 因为有各种各样的路线,我在文档中找到了这个例子 要匹配所有URL,请执行以下操作:

from flask import Flask
app = Flask(__name__)

@app.route('/', defaults={'path': ''})
@app.route('/<path:path>')
def catch_all(path):
    return 'You want path: %s' % path

if __name__ == '__main__':
    app.run() 
从烧瓶导入烧瓶
app=烧瓶(名称)
@app.route('/',默认值={'path':''})
@应用程序路径(“/”)
def catch_all(路径):
返回“您想要的路径:%s”%path
如果uuuu name uuuuuu='\uuuuuuu main\uuuuuuu':
app.run()

我想知道的是,让一个视图函数处理这个路由子集和另一个视图函数处理所有其他路由的最佳方式是什么

Flask具有装饰器来执行请求操作

@app.after_request
def catch_all(response):
    # * additional checks here *
您可以通过返回数据来停止正常处理

如果这些函数中的任何一个返回一个值,则会将其作为视图中的返回值进行处理,并停止进一步的请求处理


它通常用于身份验证或权限检查。

但检查应仅对一小部分路由执行,而不是对所有路由执行。将对请求正文中发送的数据执行检查,检查数据的结构是否因不同的视图功能而异。例如,一条路由(我们称之为/example)发送一个经过数字签名的xml,并且应该检查签名的有效性。其他路由不在请求正文中发送数据,或发送结构不同的数据查找蓝图,然后您可以根据蓝图子集筛选输入的请求。