Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

109
Visualizações
Multer está configurado en mi backend express pero no se llama ni almacena imágenes de la solicitud

Tengo un proyecto backend express. Hago que el usuario envíe una foto para su foto de perfil. Tengo configuración de multer y todo. Cuando llega una solicitud desde la interfaz, simplemente quiero tomar ese archivo de la solicitud y almacenarlo en la carpeta ./backend/client/images/profile .

Tengo el problema cuando llamo a upload.single() , el archivo está allí, pero por alguna razón, en realidad no está pasando por el proceso de configurar el nombre del archivo almacenado y almacenar la imagen. Tengo un archivo console.log() que se supone que se activa cuando se actualiza el nombre del archivo, pero no se activa.

No estoy seguro de por qué console.log() no se activa o el archivo no se guarda como quiero que se guarde. La ruta es correcta pero nada:

archivo del controlador:

 const Profile = require("../../models/UserModels/Profiles.js") const User = require('../../models/UserModels/Users.js') const multer = require('multer') const storage = multer.diskStorage({ destination: function (req, file, cb) { cb(null, './backend/client/images/profile') }, filename: function (req, file, cb) { console.log(file) <------------------- NOT TRIGGERING --------------- const uniqueSuffix = Date.now() + '-' + Math.round(Math.random() * 1E9) cb(null, file.fieldname + '-' + uniqueSuffix) } }) const upload = multer({ storaddge: storage }) const profileController = { get:(req, res) => { if(req.session.authenticated){ Profile.findOne({ where: {userId: req.session.user.userId} }) .then((data) => { res.send(data).status(200) }) .catch((err) => { console.error(err) }) } }, post:(req, res) => { console.log(req.body) console.log(req.files) upload.single(req.files.profile_pic) <------ tried both upload.single(req.files.profile_pic.name) <----------- let body = req.body Profile.create({ profile_pic: req.files.profile_pic.name, f_name: body.f_name, l_name: body.l_name, bio: body.bio, location: body.location, sm_facebook: body.sm_facebook, sm_instagram: body.sm_instagram, sm_twitter: body.sm_twitter, sm_website: body.sm_website, followers: body.followers, following: body.following, photos: body.photos, downloads: body.downloads, edits: body.edits, userId: body.userId })

así es como se ve el objeto de archivos cuando llega al backend:

 { profile_pic: { name: 'ThinkstockPhotos-124946816-1-side.width-358.jpg', data: <Buffer ff d8 ff e0 00 10 4a 46 49 46 00 01 01 00 00 01 00 01 00 00 ff db 00 43 00 05 03 04 04 04 03 05 04 04 04 05 05 05 06 07 0c 08 07 07 07 07 0f 0b 0b 09 ... 56757 more bytes>, size: 56807, encoding: '7bit', tempFilePath: '', truncated: false, mimetype: 'image/jpeg', md5: 'a938825a8aeccfa50b13d269034f0b68', mv: [Function: mv] } }
about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda