在Cherrypy中可以这样做:
@cherrypy.expose
def default(self, url, *suburl, **kwarg):
pass
是否有相同的烧瓶?
答案 0 :(得分:30)
Flask的网站上有一个关于烧瓶的“全能”路线的片段。 You can find it here
基本上,装饰器通过链接两个URL过滤器来工作。页面上的示例是:
@app.route('/', defaults={'path': ''})
@app.route('/<path:path>')
def catch_all(path):
return 'You want path: %s' % path
哪会给你:
% curl 127.0.0.1:5000 # Matches the first rule
You want path:
% curl 127.0.0.1:5000/foo/bar # Matches the second rule
You want path: foo/bar
答案 1 :(得分:0)
如果单页应用程序具有嵌套路由(例如,www.myapp.com / tabs / tab1-在Ionic / Angular路由中很典型),则可以像下面这样扩展相同的逻辑:
@app.route('/', defaults={'path1': '', 'path2': ''})
@app.route('/<path:path1>', defaults={'path2': ''})
@app.route('/<path:path1>/<path:path2>')
def catch_all(path1, path2):
return app.send_static_file('index.html')
答案 2 :(得分:0)
@app.errorhandler(404)
def handle_404(e):
# handle all other routes here
return 'Not Found, but we HANDLED IT
答案 3 :(得分:0)
试试这个
@app.route('/')
def entry():
return redirect('/defaultroute')