上传文件后清理临时文件

时间:2017-04-25 10:19:21

标签: node.js restify formidable

我正在使用restify构建节点存储服务器。我正在通过restify.bodyParser处理上传内容,后者使用formidable

默认情况下,Formidable会在os.tmpDir()中存储文件,我需要将其更改为其他文件夹,因此我通过restify.bodyParser({uploadDir: '/path/to/new/tmp'})执行了此操作。

问题是,即使我处理完请求后,这些临时文件仍保存在tmp目录中。

我已经看到了这个问题(Handling Temporary Files after upload),假设在处理之后只删除tmp文件。

我的问题是,您是否需要始终手动删除该文件?即使使用默认的os.tmpDir()目录?默认系统tmp文件夹如何工作?它有时会冲洗吗?

1 个答案:

答案 0 :(得分:2)

通常,对于文件上传,您的代码会将上传的文件从其临时位置移动到更长久的位置。如果在处理完上传后,你留下了一个临时文件,你应该手动清理它(使用fs.unlink())。

在UNIX类型的操作系统上,系统不会定期清除os.tmpDir()(通常为/tmp)(尽管通常在系统引导期间将其清除)。