Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

190
Visualizações
Error: "indefinido" al cargar varios archivos usando multer

Ruta:

 router.post('/MOCReport', upload.array('files'), MOCReportController.MOCReport_post);

Controlador:

 exports.MOCReport_post = (req, res, next) => { const files = req.files; console.log(files.filename); if(!files){ const error = new Error('Please upload an image') error.httpStatusCode = 400 return next (error) } var paths = req.files.map(files => file.path) let newMOCReport = new MOCReport({ facilityName: req.body.facilityName, MoCDescription: req.body.MoCDescription, MoCReportDateTime: req.body.MoCReportDateTime, MoCDisasterLocation: req.body.MoCDisasterLocation, mocImage: req.files.paths }); newMOCReport.save().then((MOCReportDoc) => { res.send(MOCReportDoc); }); }; Schema: mocImage:{ type: Array, required: false },

Obteniendo un error indefinido al cargar varias imágenes en la base de datos mongoDB con multer.

Error: escuchando el puerto 3000 Conectado a MongoDB con éxito :)

indefinido

POST /MoCReport 500 44.414 ms - 43

ingrese la descripción de la imagen aquí

about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

Compruebe si está enviando todos los archivos con el mismo nombre " archivos ".

Puedes intentar cambiar esto:

 upload.array('files')

a esto:

 upload.any()

El método any() aceptará todos los archivos. No comprobará el nombre del campo.

Además, después de este cambio, debe cambiar esta línea:

 var paths = req.files.map(files => file.path);

Tiene un error allí, porque está mapeando files y está accediendo al file . Cámbialo así:

 const paths = req.files.map(file => file.path);
about 4 years ago · Juan Pablo Isaza Relatório

0

Compruebe que este es el código de trabajo completo.

 const express = require('express') const app = express() const port = 3000 const multer = require('multer') const upload = multer({ dest: 'uploads/' }) app.get('/', (req, res) => { res.send('<form id="form_el" class=\'new-project\' action=\'/MOCReport\' method=\'POST\' enctype="multipart/form-data">\n' + ' <label for=\'file\'>Select your image:</label>\n' + ' <input type=\'file\' multiple=\'multiple\' accept=\'image/!*\' name=\'uploadedImages\' id=\'file\' />\n' + ' <span class=\'hint\'>Supported files: jpg, jpeg, png.</span>\n' + ' <button type=\'submit\'>upload</button>\n' + '</form>') }) app.post('/MOCReport',upload.any(),function (req, res, next){ const files = req.files; console.log(JSON.stringify(files)); res.send('Uploaded successfully'); }); app.listen(port, () => { console.log(`Example app listening on port ${port}`) })
about 4 years ago · Juan Pablo Isaza Relatório

0

yo tambien tuve un problema similar

Por favor revise el código de reacción

Verifique la estructura para ver si la información del archivo está correctamente cargada en formdata.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda