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

314
Vistas
Cómo cargar una imagen local por axios y enviarla a un servidor con express-fileupload

Este es el proceso de lectura del archivo. El filePath es una ruta de archivo JPG específica (como /xxx.jpg).

 const fileStream = fs.createReadStream(filePath);

Luego empiezo a enviarlo a una API.

 async function upload(fileData) { const formData = new FormData(); const fileArr = []; fileArr.push(fileData); formData.append("img", fileArr[0]); const result = ( await axios.post( imgHosting, formData, { headers: { "Content-Type": "multipart/form-data", }, } ) ).data; return result; }

Este es mi código API.

 app.post('/upload', (req, res) => { try { if (!req.files) { console.log('test'); const data = { code: 404, status: "No file uploaded", link: "undefined" }; res.json(data); } else { console.log('uploading...'); let img = req.files.img; let md5 = crypto.createHash('md5').update(img.name).digest('hex'); let ext = path.extname(img.name); const cryptedName = `${md5}${ext}`; const uploadPath = path.join(__dirname, '../uploads', cryptedName); console.log(uploadPath);//? debug img.mv(uploadPath); const data = { code: 200, status: "upload ok", link: "http://my-server-ip/pic/" + md5 + ext }; res.json(data); } } catch (err) { res.status(500).send(err); } });

El remitente Node.js y la API Node.js están en el mismo servidor ECS. No sé si esto causará algún problema. Pero puedo recibir los datos JSON de la siguiente respuesta:

 0|chatbot | url is: undefined 2|pic-bed | test 0|chatbot | { code: 404, status: 'No file uploaded', link: 'undefined' } 0|chatbot | No file uploaded

Creo que el problema debería ser que los datos que envío a la API no están en formato de archivo, pero no sé cómo enviar el archivo JPG local directamente a express-fileupoad . ¿Tampoco parece admitir la importación de archivos directamente a través de la ruta del archivo?

Esta es la primera vez que hago preguntas en stackoverflow. ¡Por favor, perdónenme si hay algún incumplimiento!

about 4 years ago · Juan Pablo Isaza
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