在Flask中,您可以使用send_from_directory
函数来直接输出静态HTML文件。这个函数可以从指定的目录中发送文件作为响应。
以下是一个例子,假设您的静态HTML文件存储在名为templates
的目录下:
from flask import Flask, send_from_directory
app = Flask(__name__)
@app.route('/html/<path:path>')
def send_html(path):
return send_from_directory('templates', path)
if __name__ == '__main__':
app.run()
在这个例子中,我们定义了一个send_html
函数,它使用send_from_directory
函数来发送静态HTML文件。<path:path>
是Flask路由的一部分,它允许我们动态地指定文件路径。send_from_directory
函数将从templates
目录中找到指定路径的文件,并将其作为响应发送回客户端。
例如,如果您有一个名为index.html
的文件存储在templates
目录下,您可以通过访问http://localhost:5000/html/index.html
来直接输出该文件。
请注意,这种方法并不推荐用于生产环境,因为它可以容易地导致安全漏洞。如果您需要在生产环境中提供静态文件,请考虑使用专门的Web服务器,如Nginx或Apache。