Flask会自动删除中止的大文件上传吗?

时间:2015-06-18 08:41:09

标签: python file-upload flask

My Flask应用程序将允许将大文件(最多100 Mb)上传到我的服务器。我想知道如果客户端决定停止上传中途,Flask如何管理分块文件。我看了documentation about File Upload,但无法找到提到的内容。

Flask会自动删除该文件吗?怎么知道用户不会重试呢?或者我是否必须手动删除临时文件夹中的已中止文件?

1 个答案:

答案 0 :(得分:3)

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

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

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

Flask不处理用户再次上传文件的情况;无论如何,没有标准的方法来处理它。你必须在那里找到自己的解决方案。