2017-04-04 55 views
1

我正在使用多方上传服务器上的某些文件,我注意到在使用form.parse时,正在SO文件系统中添加一个临时文件。如何使用节点上传后删除文件?

我需要删除窗体关闭后的文件,但我无法获取文件路径的信息。

任何想法如何解决这个问题?

function onUpload(req, res) { 
    var form = new multiparty.Form(); 

    form.parse(req, function(err, fields, files) { 
    onSimpleUpload(fields, files[fileInputName][0], res); 
    }); 

    // Close emitted after form parsed 
    form.on('close', function() { 
    // cannot get file here to be deleted 
    }); 
} 

回答

0

具体来说:

var fs = require('fs'); 

var filePath = files[fileInputName][0].path; 
fs.unlinkSync(filePath); 

或异步:

var fs = require('fs'); 

var filePath = files[fileInputName][0].path; 
fs.unlink(filePath, function(err){ 
    if(err) // do something with error 
    else // delete successful 
}); 
0

你可以保存在本地文件系统中的文件的路径,通过files[fileInputName][0].path