单页应用程序

Flask 可以用于服务单页应用程序(spa),方法是将前端框架生成的静态文件放在项目内部的子文件夹中。您还需要创建一个将所有请求路由到SPA的catch all端点。

以下示例演示如何与API一起提供SPA服务:

from flask import Flask, jsonify

app = Flask(__name__, static_folder='app', static_url_path="/app")


@app.route("/heartbeat")
def heartbeat():
    return jsonify({"status": "healthy"})


@app.route('/', defaults={'path': ''})
@app.route('/<path:path>')
def catch_all(path):
    return app.send_static_file("index.html")