从 Azure 应用服务的 python-flask 应用共享文件

Share file from python-flask app from azure app service

我有一个 python-flask webapp,它部署在 Azure 上,用作聊天机器人的后端。根据用户查询,机器人执行操作并将文件保存在本地。该文件需要共享给用户。

有没有一种方法可以让我在聊天中与用户共享超链接,以便用户下载文件而无需在 azure 上创建存储。 (文件不需要保存,超时后可以删除。文件很小(10-20 kB))

您可以使用 send_from_directory

提供带有 Flask 端点的文件

您可以使用散列名称或文件(或任何唯一的命名约定)来保存文件,并将其用作 link 供用户使用。假设您将这些文件保存在 FILE_DIR 目录中。

from flask import request, send_from_directory

@app.route('/some-endpoint/')
def download_file():
    filename = request.args.get('hash')
    return send_from_directory(FILE_DIR, filename, as_attachment=True)