如何制作一条只处理目录和一个处理文件的全部路由?
下面是一个简单的例子
from flask import Flask
app = Flask(__name__)
@app.route('/foo')
def foo_file():
return 'Queried: foo file'
@app.route('/foo/')
def foo_dir():
return 'Queried: foo dir'
@app.route('/<path:path>')
def file(path):
return 'Queried file: {0}'.format(path)
@app.route('/')
@app.route('/<path:path>/')
def folder(path):
return 'Queried folder: {0}'.format(path)
if __name__ == '__main__':
app.run()
当我访问http:\\127.0.0.1:5000\foo
它时调用它foo_file()
并为http:\\127.0.0.1:5000\foo\
它调用foo_dir()
. 但是查询http:\\127.0.0.1:5000\bar
和http:\\127.0.0.1:5000\bar\
都调用
file()
. 我该如何改变呢?
我知道我可以手动检查斜杠并重新路由,我只是想知道是否还有其他方法。