目前,我有一个关于 Flask 应用程序的问题。
我正在开发一个需要生成报告的网络应用程序(一些自动生成的html文件,如junit报告)。
在report_dispay页面上,我在左侧有一个导航栏,上面有多个报告标题(html链接);右侧有一个 iframe,点击一个链接就会在其中显示报告。生成报告后,我发回 URI(相对文件位置,即“reports/html/index”)。但是当我设置iframe的src属性时,flask命令行打印404,找不到“reports/html/index”。
您知道如何将生成的报告“注册”到应用程序吗?
非常感谢, 维康
最佳答案
您需要为这些报告注册一个处理程序:
# Other imports here
from werkzeug.utils import safe_join
# ... snip Flask setup ...
@app.route("/reports/<path:report_name>")
def report_viewer(report_name):
if report_name is None:
abort(404)
BASE_PATH = "/your/base/path/to/reports"
fp = safe_join(BASE_PATH, report_name)
with open(fp, "r") as fo:
file_contents = fo.read()
return file_contents
关于jquery - 设置来自 Flask 的 iframe src 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11790031/