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

195
Visualizações
Servidor web guardando imágenes como 0 bytes

Cuando envío una imagen a mi servidor web a través de una solicitud http, logra guardar la imagen original con su tamaño completo. Pero cuando intento cambiar el tamaño de la imagen, la guarda como 0 bytes. Estoy usando un módulo npm llamado sharp para cambiar el tamaño de la imagen. Cuando realizo cualquier cambio de tamaño, incluso trabajos de cambio de tamaño masivos en mi máquina local, no hay problemas. Ejecutar este código en mi servidor web Apache hace que en realidad no guarde las imágenes la mayor parte del tiempo. Parece completamente aleatorio qué imágenes realmente guarda. La única parte consistente es que guarda la imagen original enviada a través de la solicitud http.

En mi sistema de archivos habrá la imagen original EG: abcdefg.jpg, y luego abcdefg-350x350.jpg tendrá 0 bytes.

 const results = await temp.mv(path.resolve(folderName + name + '.' + extension)) bluebird.map(sizes, (size) => { sharp(folderName + name + '.' + extension) .resize(size.w, size.h, { fit: 'cover' }) .toFile(folderName + name + '-' + size.w + 'x' + size.h + '.' + extension) console.log('Resized image') }) .then(() => { console.log('Images were resized') if (process.env.NODE_ENV === 'development' || process.env.NODE_ENV === 'testing') { console.log('Images resized and going back'); res.status(200).json({'location': '/imageserving/uploads/' + year + '/' + month + '/' + name + '.' + extension, fileIndex: '1'}); } else if (process.env.NODE_ENV === 'production') { //possibly use req.hostname res.status(200).json({'location': 'mysite/uploads/' + year + '/' + month + '/' + name + '.' + extension, fileIndex: '1'}); } })
over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Intenta actualizar esta línea:

 sharp(folderName + name + '.' + extension)

a esto:

 return sharp(folderName + name + '.' + extension)

... eso debería garantizar que la siguiente sección then() esté correctamente encadenada a la promesa y evite posibles condiciones de carrera que pueden estar causando el comportamiento inconsistente.

over 4 years ago · Santiago Trujillo Relatório
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