Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

476
Vistas
Node.js - Display image from MongoDB

I managed to save image to mongoDB with type Buffer. Together with the image is the username of the user currently logged in. MY problem now is to display the image(s) to the client's side. Much appreciated if it has a condition like "display image where username = 'currentUser_username'". I also have an 'uploads' folder where the images are saved. Please help. I'm a newbie in nodeJS. Please be very detailed in ur answer. Thanks

about 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

To send the image to the client, you need to save image binary data, image content type.

The structure of your schema should be like this.

var demoSchema = new mongoose.Schema({
    imageData : { type: Buffer },
    imageType : {type: String },
    imageName : {type: String }
})

mongoose.model('Demo', demoSchema)

On saving your image to DB, save the content type too (must).

var data = fs.readFileSync(incomingImage.path);
var input = new Demo():
input.image = new MongoDb.Binary(data);
input.imageType = incomingImage.type;
input.imageName = incomingImage.name;

input.save();

When you retrieve from DB and send the contentType and mention the buffer as binary to the client.

Demo.findById(req.params.id, function (error, result) {
    res.contentType(result.imageType);    
    res.end(result.image.buffer, "binary");
});

If you need some brief detail see here

about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda