无法在expressjs中使图像文件夹静态

问题描述 投票:0回答:1

enter image description here

我的 api 文件位于 nodejs 文件夹以及保存图像的 uploads 文件夹下。但为了发送任何请求,我需要转到nodejs.ibnhaysam.com/api/v1/[endpoint]。因此,当我想从上传文件夹中获取图像时,我应该输入nodejs.ibnhaysam.com/imagename.ext,它会回复我“在此服务器上找不到请求的资源!”。

这是我用来将图像上传到我的服务器的 multer 代码。请告诉我如何获取图像。

const path = require('path')
const multer = require('multer')

const storage = multer.diskStorage({
    destination: function (req, file, cb) {
      cb(null, 'uploads/')
    },
    filename: function (req, file, cb) {
        let ext = path.extname(file.originalname)
        let fileName = Date.now() + '-' + ext
        cb(null, fileName)
    }
  })
  
  const upload = multer({ 
    storage: storage 
  })

  module.exports = upload

我尝试了不同的网址,但没有一个网址完全有效

mongodb image express multer
1个回答
0
投票
    const uploadPath = '/nodejs.ibnhaysam.com/uploads';
    if (!fs.existsSync(uploadPath)) {
      fs.mkdirSync(uploadPath, { recursive: true });
    }
    callback(null, uploadPath);

您可以像这样定义路径上传文件夹,将图像上传到nodejs.ibnhaysam.com文件夹中。希望对您有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.