Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

313
Views
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
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!