我的 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
我尝试了不同的网址,但没有一个网址完全有效
const uploadPath = '/nodejs.ibnhaysam.com/uploads';
if (!fs.existsSync(uploadPath)) {
fs.mkdirSync(uploadPath, { recursive: true });
}
callback(null, uploadPath);
您可以像这样定义路径上传文件夹,将图像上传到nodejs.ibnhaysam.com文件夹中。希望对您有帮助。