Node.js - 使用Multer如何获取上传文件的(源文件)完整路径?
问题描述:
我想在我的node.js代码中上传文件的完整路径,就像图像一样动态。Node.js - 使用Multer如何获取上传文件的(源文件)完整路径?
我不知道该怎么办,我需要你的帮助
app.post('/upload', upload.single('userfile'), function(req, res){
var filename = __dirname +'/'+ req.file.path; //this is uploaded file path
var s = fs.ReadStream(filename);
s.on('data', function(data) {
shasum.update(data)
})
// making digest
s.on('end', function() {
var hash = shasum.digest('hex')
console.log("Hash : "+ hash + ' ' + filename)
res.send('Uploaded : ' + hash);
})
})
答
当我从您的评论看,你正在使用当地的环境。因此主机不会导致完整的URL。所以尝试删除主机。
所以更换:
var filename = __dirname +'/'+ req.file.path;
有了:
var filename = req.protocol + req.file.path;
尝试一下本作的完整路径** VAR fullUrl = req.protocol + '://' + req.get( '主机') + req.file.path; ** –
错误:ENOENT:没有这样的文件或目录,打开'C:\ nodejs \ example \ http:\ localhost:3000 \ uploads \ 4.4.1_'.hwp' –