我想知道是否有可能知道什么是不包含的二进制请求的文件名。获取快速请求流中的文件名
这是我的情况我有这样的代码来处理文件上传
router.route('/:filename')
.put(function(req,res){
var uuid = guid();
var fileExtension = req.params.filename.substring(req.params.filename.lastIndexOf("."));
if(!fs.existsSync('../files')){
fs.mkdirSync('../files')
}
var newFile = fs.createWriteStream('../files/'+uuid+fileExtension);
req.pipe(newFile);
req.on('end',function(end){
console.log("Finished")
res.send(uuid+fileExtension)
})
})
,你可以看到现在,我需要在URL ('/:filename')
指定的文件名。我的问题是:如果可以从resquest流获取该属性,而不是URL或表单键?
这真的取决于您用来处理上传的中间件的类型吗? – James
嗨@詹姆斯我只使用节点流。我将请求stram写入一个写入流对象。你可以在我的发布代码中看到:req.pipe(newFile); –
您使用哪种版本的快递? – James