Node.js - 使用 Multer 如何获取上传文件(源文件)的完整路径?



我想在我的节点.js代码中获取上传文件的完整路径,就像图像一样动态。

我不知道该怎么办,我需要你的帮助

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;

最新更新