передать сообщение об ошибке multer на другой маршрутизатор - PullRequest
1 голос
/ 27 мая 2020

Я пытался обработать ошибку загрузки файла, но не с новой ошибкой. Поскольку я хочу отправить его обратно и отобразить на странице загрузки.

В моем коде я хочу передать маршрутизатору сообщение об ошибке fileFilter ('car_controller.car_register_post), а затем использовать его как req.body или другие на html.

Но я не могу найти способ сделать это отовсюду ... Кто-нибудь может мне помочь?

var express = require('express');
var router = express.Router();
const multer = require("multer");

var car_controller = require('../controllers/CarController');

var storage = multer.memoryStorage({
    destination: function (req, file, cb) {
      cb(null, '')
    },
});

const fileFilter = (req, file, cb) => {
  if (
    file.mimetype === "image/png" ||
    file.mimetype === "image/jpg" ||
    file.mimetype === "image/jpeg"
  ) {
    cb(null, true);
  } else {
    cb(new Error("File format should be PNG,JPG,JPEG"), false); // I want to pass this error message to html
  }
};

var upload = multer({ 
  storage: storage, 
  fileFilter: fileFilter
});


/* GET users listing. */

router.post('/car/register', upload.single('image_file'), car_controller.car_register_post);
...