Flask是否会自动删除已中止的大文件上传?

Cyr*_* N. 1 python file-upload flask

我的Flask应用程序允许将大文件(最大100 Mb)上传到我的服务器。我想知道如果客户端决定中途停止上传,Flask如何管理分块文件。我阅读了有关文件上传文档,但是找不到提到的内容。

Flask是否会自动删除文件?如何知道用户不会重试?还是我必须手动删除临时文件夹中的中止文件?

Mar*_*ers 5

Werkzeug(Flask用于许多任务(包括此任务)的库)在上载时使用一个tempfile.TemporaryFile对象来接收WSGI文件流。该对象自动管理打开的文件。

  • 该文件将立即在磁盘上删除;目录表中不再有任何条目,但是该过程保留了文件句柄
  • TemporaryFile对象被清除(没有引用保持,这通常是因为请求结束),文件对象被关闭,操作系统清除使用的磁盘空间。

这样,当请求中止时,文件数据将被删除。

Flask无法处理用户再次上传文件的情况;无论如何,没有标准的方法来处理该问题。您必须在那里提出自己的解决方案。