在Flask app.route()中将文件路径作为参数传递

时间:2019-03-22 15:16:49

标签: python-3.x flask url-parameters urlparse

这是我的代码。我试图将文件路径作为参数,但是目录之间路径中的“ /”使得该方法将目录视为单独的参数。

from flask import Flask, abort, redirect, url_for, send_from_directory

app = Flask(__name__)


@app.route('/<a>/<b>/<c>/<d>/<e>/<f>')
def url(a, e, b, c, d, f):
    if f == '':
        f = 'index.html'
    print(f)


if __name__ == "__main__":
    app.run(host="0.0.0.0", debug=True, port=80)

基本上,变量f应该采用文件路径(a,b,c,d,e只是其他参数),并且当输入/时,该方法会将f视为多个参数。 在不更改分割变量的情况下是否有任何修补程序?

1 个答案:

答案 0 :(得分:0)

尝试一下:

@app.route('/<a>/<b>/<c>/<d>/<e>/<path:f>')

请参阅:http://flask.pocoo.org/snippets/76/