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

242
Views
Combinación de carga de archivos angulares y multer

Tengo un gran dolor de cabeza para combinar el complemento de carga de archivos angulares con multer para que sea completamente SPA. Me limité a subir varios archivos a través de multer.

Así es como se ven mis opciones de multer: (archivo node route.js)

 var upload = multer({ storage: storage, limits: { //fileSize: 819200 } }).array('myFile');

este es mi POST: (archivo node route.js)

 router.post('/add/file', function(req, res, next) { upload(req,res,function(err) { console.log(req.files); if(err) { console.log("Error uploading file."); } }); });

esto está dentro de mi controlador angular:

 var uploader = $scope.uploader = new FileUploader({ url: 'http://localhost:3000/add/file', alias: 'myFile' }); uploader.filters.push({ name: 'imageFilter', fn: function(item /*{File|FileLikeObject}*/, options) { var type = '|' + item.type.slice(item.type.lastIndexOf('/') + 1) + '|'; return '|jpg|png|jpeg|bmp|gif|'.indexOf(type) !== -1; } });

Agrega solo el primer archivo y se atasca. No recibo ningún error, simplemente se atasca. Toda la página funciona y puedo enviar archivos nuevamente, pero nuevamente solo se cargará el primer archivo. La consola muestra que req.files tienen solo 1 archivo (el primero)

No pude encontrar ningún tutorial ni nada en Internet con el complemento de carga de archivos angulares, por eso les pregunto a ustedes

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

No estoy seguro de si ya se dio cuenta de esto o no, pero al enviar varios archivos, la función 'uploadAll' no enviará el siguiente archivo hasta que reciba una respuesta del servidor. Así que la ruta debería verse así. También vi en algún lugar de la documentación que la respuesta debe ser json ... aunque no he probado si esto es cierto o no

 router.post('/add/file', function(req, res, next) { upload(req,res,function(err) { console.log(req.files); if(err) { console.log("Error uploading file."); } else { res.status(200).json({response: 'some response...'}) } }); });

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!