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

326
Views
¿Cómo cargar un archivo al servidor api en el nodo js?

Estoy creando una aplicación web que necesita cargar un informe de prueba. estoy trabajando en el front-end y otro tipo está trabajando en el back-end (con nodejs y mongodb). Su servidor API se ejecuta por separado y mi aplicación web se ejecuta por separado. ahora necesito enviar el archivo cargado a su API tal como está. tengo un problema para hacerlo. Estoy enviando datos a través de ajax. este es mi codigo ajax

 var $form = $(e.target); var formData = new FormData(); formData.append('productsfile', $('#prdcttestfile')[0].files[0]); formData.append('productid', $('#prdctid').val()); formData.append('warantydays', $('#prdctwarranty').val()); formData.append('baseprice', $('#prdctbaseprice').val()); formData.append('discountedpercent', $('#prdctdiscountedprice').val()); formData.append('taxpercent', $('#prdcttax').val()); formData.append('language', $('#prdctlanguage').val()); formData.append('inventoryid', $('#village').val()); $.ajax({ url: '/product/movetoinventory', type: 'POST', data: formData, contentType: false, processData: false, success: function (response) { if (response.success) { new PNotify({ title: "Enquiry Updted", type: "info", text: "Your enquiry has been updated", nonblock: { nonblock: true }, addclass: 'dark', styling: 'bootstrap3', hide: true, before_close: function (PNotify) { PNotify.update({ title: PNotify.options.title + " - Enjoy your Stay", before_close: null }); PNotify.queueRemove(); return false; } }); $('.modal.in').modal('hide'); $("#inventory_product")[0].reset(); } } });

cuando uso console.log (req.body) en mis rutas, obtengo los datos junto con la RUTA DEL ARCHIVO (no el archivo). si uso console.log(req.files) me quedo vacío {}.

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Puede utilizar dos métodos para cargar archivos.

  1. Envíe Base64 del archivo al backend. El desarrollador del backend almacena este archivo en el servidor y la URL de la ubicación de la tienda se almacenará en la base de datos.

  2. Para el nodo, tenga multer y connect-multiparty npm. Puede elegir uno de ellos.

    Para el código de fondo es

     var express = require('express'), bodyParser = require('body-parser'), host = '127.0.0.1', port = '3002', multer = require('multer'), app = express(); var upload = multer() app.use(bodyParser.urlencoded({ extended: false })) app.post('/file-upload', upload, function(req, res) { console.log('file upload'); }) app.listen(port, function() { console.log('hi server run' + " " + port); })

y el código front-end es

 <body> <form method="post" enctype="multipart/form-data" action="http://localhost:3002/file-upload"> <input type="file" name="thumbnail"> <input type="submit"> </form>

Creo que la segunda opción es una buena opción para cargar archivos. Puede verificar multer

para la carga de múltiples archivos en un

over 4 years ago · Santiago Trujillo Report
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!