我的 Flask 应用程序将允许将大文件(最多 100 Mb)上传到我的服务器。我想知道如果客户端决定中途停止上传,Flask 是如何管理分块文件的。我读了documentation about File Upload但无法找到提到的内容。
Flask 会自动删除文件吗?它怎么知道用户不会重试呢?还是我必须手动删除临时文件夹中中止的文件?
请您参考如下方法:
Werkzeug(Flask 用于许多任务的库,包括这个)使用 tempfile.TemporaryFile object上传时接收 WSGI 文件流。该对象自动管理打开的文件。
- 文件立即从磁盘上删除;目录表中不再有条目,但进程保留了一个文件句柄
- 当
TemporaryFile对象被清除时(没有引用保留,通常是因为请求结束),文件对象被关闭并且操作系统清除使用的磁盘空间。
因此,当请求中止时,文件数据将被删除。
Flask 不处理用户再次上传文件的情况;无论如何都没有标准的方法来处理这个问题。您必须在那里提出自己的解决方案。
