我目前正在开发一个服务器端 json 接口,其中有几个临时文件在请求期间进行操作。
我当前在请求结束时清理这些文件的解决方案如下所示:
@app.route("/method",methods=['POST'])
def api_entry():
with ObjectThatCreatesTemporaryFiles() as object:
object.createTemporaryFiles()
return "blabalbal"
在这种情况下,清理在 object.__exit__() 中进行
但是在某些情况下,我需要向客户端返回一个临时文件,在这种情况下,代码如下所示:
@app.route("/method",methods=['POST'])
def api_entry():
with ObjectThatCreatesTemporaryFiles() as object:
object.createTemporaryFiles()
return send_file(object.somePath)
这目前不起作用,因为当我进行清理时,烧瓶正在读取文件并将其发送给客户端。¨ 我该如何解决这个问题?
编辑:我忘了提到这些文件位于临时目录中。