node.js - 使用express-fileUpload上传文件错误

标签 node.js express sequelize.js

我在服务器上上传文件时出错,如果我可以提供帮助

这是一个从客户端获取文件并将其保存到上传文件夹的命令

exports.adminSendFile = (req, res) => {
if (req.files === null) {
    return res.status(400).json({ msg: 'No file uploaded' });
}
const file = req.files.file;

file.mv(`${__dirname}/SERVER/Servises/uploads/${file.name}`, err => {
    console.log("****HERE*****");
    if (err) {
        console.error(err);
        return res.status(500).send(err)
    }
    res.json({
        fileName: file.name,
        filePath: `/SERVER/Servises/uploads/${file.name}`
    })
    console.log(req.body),
        vacations.create({
            description: req.body.description,
            destination: req.body.destination,
            createdAt: req.body.createdAt,
            updatedAt: req.body.updatedAt,
            img: req.body.filePath,
            price: req.body.price,
        })

})

Imge>>>Clike-Me

您可以在此处看到错误

{ [Error: ENOENT: no such file or directory, open 'C:\Users\Itzik\Desktop\לימודים\projact3\server\Servises\controller\SERVER\Servises\uploads\My Passport Photo.jpg']
  errno: -4058,
  code: 'ENOENT',
  syscall: 'open',
  path:
   'C:\\Users\\Itzik\\Desktop\\לימודים\\projact3\\server\\Servises\\controller\\SERVER\\Servises\\uploads\\My Passport Photo.jpg' }
POST /users/admin/upload 500 40.394 ms - 189

最佳答案

__dirname 是最常用的方法。 它为您提供当前运行文件的路径。

根据您的错误,我认为您尝试获取的路径是这样的:

C:\Users\Itzik\Desktop\לימודים\projact3\server\Servises\uploads\My Passport Photo.jpg'

而不是:

C:\Users\Itzik\Desktop\לימודים\projact3\server\Servises\controller\SERVER\Servises\uploads\My Passport Photo.jpg'

您需要使用 ../ 从当前目录向上一级,然后就可以开始了,如下所示:

file.mv(`${__dirname}/../uploads/${file.name}`

关于node.js - 使用express-fileUpload上传文件错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57760692/

相关文章:

node.js - 如何仅安装 "build"或 "dist"或通过 npm 输出库的结果

javascript - 如何正确导出从 NodeJS 中的 API 调用检索到的值

node.js - 似乎无法通过 NodeJS 提交到 Google 表单

node.js - Node 亚马逊s3 putObject上传无法上传多个文件(只上传一个)但说它有效

windows - 避免在 Windows 批处理文件的 for 循环中打印

javascript - 当我使用静态站点时,如何使用 Express 处理路由?

javascript - 在 Jade 中解析 JSON

node.js - 如何在后端的nodejs中进行排序

javascript - Sequelize onDelete 不工作

javascript - 如何在 SequelizeJS 中使用 $in 运算符?