Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

1.3K
Vistas
No sé cómo manejar los errores en Multer con Express

Estoy usando Multer para subir un máximo de 3 imágenes al servidor y funciona bien, pero cuando subo más de 3 imágenes, Multer me dice el error pero no es manejable mostrárselo al usuario.

Estoy trabajando en la ruta que llama al controlador, pero en la documentación de Multer solo muestra cómo manejar los errores con la ruta junto con las acciones del controlador.

Ruta:

 router.post('/', upload.array('pictures', 3), newProduct );

Código de documentación para el manejo de errores Multer:

 const multer = require('multer') const upload = multer().single('avatar') app.post('/profile', function (req, res) { upload(req, res, function (err) { if (err instanceof multer.MulterError) { // A Multer error occurred when uploading. } else if (err) { // An unknown error occurred when uploading. } // Everything went fine. }) })

Respuesta de error mostrada por Multer:

error

En este caso, ¿cómo podría hacer la misma documentación pero por separado para manejar los errores de Multer?

Gracias.

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Aquí multer le brinda un middleware para manejar los datos entrantes de múltiples partes/formularios

 const multer = require('multer') const upload = multer().single('avatar')

Puede solucionar su problema creando un envoltorio de middleware para el middleware proporcionado por el paquete multer .

 const multer = require('multer'); const uploadMiddleware = (req,res,next)=>{ const upload = multer().array('pictures', 3); // Here call the upload middleware of multer upload(req, res, function (err) { if (err instanceof multer.MulterError) { // A Multer error occurred when uploading. const err = new Error('Multer error'); next(err) } else if (err) { // An unknown error occurred when uploading. const err = new Error('Server Error') next(err) } // Everything went fine. next() }) }

Aquí con next() puede manejar el error relacionado con el multer a su manera

Y en tus rutas simplemente puedes usarlo así

 router.post('/', uploadMiddleware, newProduct );
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda