Я не могу на всю жизнь заставить работать загрузку файлов Малтера. Я прочитал десятки учебных пособий, следовал инструкциям YT и изучил десятки вопросов StackOverflow, но не могу заставить эту штуку работать через Postman.
Это страница маршрута с маршрутом /image-upload.
Вот полный код:
const express = require('express');
const router = express.Router();
const mongoose = require('mongoose');
const passport = require('passport');
const bodyParser = require('body-parser');
const jwt = require('jsonwebtoken');
const multer = require('multer');
const fileUpload = require('express-fileupload');
let path = require('path');
var storage = multer.diskStorage({
destination: (req, file, cb) => {
cb(null, __dirname + '../uploads')
},
filename: (req, file, cb) => {
cb(null, file.fieldname + '-' + Date.now())
}
});
var upload = multer({storage: storage});
router.post('/', upload.single('image'), (req, res, next) => {
let file = req.file;
console.log(req.file);
console.log(req.files);
if (!file) {
return res.json({nofile: 'please upload a file'})
}
})
module.exports = router;
Это не проблема размера файла, так какразмер файла составляет 46 КБ. При получении console.log (req.file) я получаю неопределенное значение, но при этом получаю полную информацию: console.log (req.files). В Postman он просто возвращает ошибку json, как будто файл даже не читается с помощью multer. В почтальоне я правильно использую данные формы для маршрута POST, а имя поля файла: image, как я заявляю в маршруте POST.