Flask:确保删除临时上载文件的最佳方法

Flask:确保删除临时上载文件的最佳方法,flask,Flask,[类似的问题发表在《软件工程》上,但被认为有点离题,因此在这里重新发布] 我的应用程序包括实现多步骤向导的功能。步骤1允许用户上传天文图像文件(通常为32mb)。步骤2允许用户为Astropy模块指定参数,以识别图像中的潜在恒星,并将其与在线恒星数据库相匹配。步骤3允许用户定义一系列过滤器来定义感兴趣的星星,最后步骤4保存过滤后的星星数据并删除上传的图像 步骤1中上载的图像当前保存在Flask Instance文件夹中(在特定于当前用户的子文件夹中),并在步骤4中删除 但是,在许多情况下,文件不

[类似的问题发表在《软件工程》上,但被认为有点离题,因此在这里重新发布]

我的应用程序包括实现多步骤向导的功能。步骤1允许用户上传天文图像文件(通常为32mb)。步骤2允许用户为Astropy模块指定参数,以识别图像中的潜在恒星,并将其与在线恒星数据库相匹配。步骤3允许用户定义一系列过滤器来定义感兴趣的星星,最后步骤4保存过滤后的星星数据并删除上传的图像

步骤1中上载的图像当前保存在Flask Instance文件夹中(在特定于当前用户的子文件夹中),并在步骤4中删除

但是,在许多情况下,文件不会被删除,因为向导从未达到步骤4(用户导航到另一个页面而不取消向导,他们失去Internet连接,电脑崩溃等)

所以我需要一个傻瓜般的方式删除孤儿上传的图像。我考虑过一个定期运行并删除超过n分钟的文件的计划任务,但这看起来很粗糙


有更好的方法吗?

这些步骤如何工作,用户如何导航到另一个页面?你的意思是仅仅关闭它或转到另一个网站?目前,步骤1是AJAX上传,后续步骤是发布到同一个端点(隐藏的表单字段传递步骤编号,JavaScript根据需要显示/隐藏向导步骤选项卡)。用户不希望导航离开(他们应该取消或完成向导-这两种操作都会导致在endpoint View功能中删除上载的文件),但有时他们会这样做,或者他们可能会感到厌烦并关闭浏览器。