0
私はExpressJSを使用してRESTバックエンドを作成しています。バックエンドの一部では、ユーザーはファイルアセットをアップロードできます。ファイルアセットは10分間存在する必要があります。setTimeoutを使用するとNodeJSで何かが実行されますか?
安全にsetTimeout
を使用して10分後にファイルを削除するか、NodeJSでこれを行うより良い方法がありますか?ファイルを削除するにはどうすればよいですか?ここに私の現在の解決策があります:
router.post('/upload', fileUpload.single('asset'), (req, res) => {
// Do something with the file
res.status(201).end();
setTimeout(() => {
// Delete the file
}, 600000);
});
だから、 'router.post'の中で' setTimeout'を使うべきではありませんか? – ItsGreg
まあ...削除したいファイルごとにタイムアウトを作成しないでください。すべての保留中のファイルを処理する1つの繰り返しタスクを作成します。そして、はい、あなたのサーバーが起動したときにこの方法を起動します。保留中の配列が空の場合、このメソッドは単に何もしません。 –
意味があります。アドバイスをいただきありがとうございます。 – ItsGreg