用户将文件下载到他们的本地目录

User to download file to their local directory

后端 - 我写了一个 python 脚本,它在一些聚合后创建一个 csv 文件。

前端 - 一旦方法完成 运行 并生成 .csv 文件并保存到服务器中的目录中,我希望能够提示用户将 .csv 文件保存在他们的本地计算机(就像在网页上按 "save as..." 时得到的 windows 提示一样)。

这是迄今为止我在 and 中学到的内容的示例:

示例代码:

with open(save_path + unique_filename + ".csv", 'w', encoding = 'utf8') as g:
    writer = csv.writer(g, lineterminator = '\n')
    writer.writerow(['name', 'place', 'location'])

HTML:

@app.route('/login', method='POST')
def do_login():
    category   = request.forms.get('category')
    return '''
    <html><body>
    Hello. <a href="/getCSV"> Save Results </a>
    </body></html>
    '''

@app.route("/getCSV", methods = ['GET', 'POST'])
    def getPlotCSV():
    return send_from_directory(save_path + unique_filename + ".csv", as_attachment=True)


if __name__ == "__main__":
   run(app, host = 'localhost', port = 8000)

我的问题是:

1) send_from_directory 是烧瓶的,瓶子相当于什么?

2) 我应该在代码的什么地方放置我创建的 csv,以便用户可以将其下载到他们的本地计算机?

3) 我的代码还有什么问题?

瓶子示例:来自https://bottlepy.org/docs/dev/tutorial.html

@route('/download/<filename:path>')
def download(filename):
    return static_file(filename, root='/path/to/static/files', download=filename)