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

283
Views
¿Cómo cargar un archivo con datos json usando fetch and multer?

Necesito cargar un archivo con algunos metadatos en un objeto json usando la función nativa de JavaScript "buscar" en el lado del cliente y expresar con el middleware multer en el lado del servidor.

cliente:

 const data = new FormData() data.append('video', video) data.append('userId', userId) data.append('property', property) fetch('/api/video', { method: 'POST', // headers: { // Accept: 'application/json', // 'Content-Type': 'application/json', // }, // body: JSON.stringify({ userId, property }) body: data }).then(res => { console.log( res ) })

servidor:

 const express = require('express') const multer = require('multer') const app = express() app.use(express.urlencoded()) app.use(express.json()) const multerUpload = multer({ dest: './videos' }) const uploadDebugged = multerUpload.single('video') function debugMulter(req, res) { uploadDebugged(req, res, (err) => { console.log(req.body) console.log('multer error:', err) }) res.send() } app.post('/api/video', debugMulter)

el registro del servidor:

 { video: 'undefined', userId: '5', property: '1' } multer error: undefined

Multer dice que no hay ningún error pero que la carpeta 'video' todavía está vacía.

Me encantaría una solución que use encabezados en la búsqueda para permitir la publicación de datos y archivos json en el servidor.

EDITAR finalmente funciona, el objeto de video estaba vacío en el lado del servidor, así que buscar, FormData y multer funcionan bien.

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Debe pasar un objeto FormData a buscar para cargar el archivo, no convertirlo en un objeto URLSearchParams.


Intente pasar uploadDebugged a la ruta y luego acceda al archivo desde req.file

 const express = require('express') const multer = require('multer') const app = express() app.use(express.urlencoded()) app.use(express.json()) const multerUpload = multer({ dest: './videos' }) const uploadDebugged = multerUpload.single('video') function debugMulter(req, res) { console.log(req.body) console.log(req.file) res.send() } app.post('/api/video', uploadDebugged, debugMulter)
about 4 years ago · Juan Pablo Isaza 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!