Bilder aus mongoDB mit GridFs lesen und anzeigen
Ich konnte mit GridFs erfolgreich Bilder in mongoDB hochladen. Unten sind Bilder aus meiner Datenbank:
fs.files:
fs.chunks:
Below ist der Code, mit dem ich Bilder hochgeladen habe:
var Grid = require('gridfs-stream');
var mongoose = require("mongoose");
Grid.mongo = mongoose.mongo;
var gfs = new Grid(mongoose.connection.db);
app.post('/picture', function(req, res) {
var part = req.files.filefield;
var writeStream = gfs.createWriteStream({
filename: part.name,
mode: 'w',
content_type:part.mimetype
});
writeStream.on('close', function() {
return res.status(200).send({
message: 'Success'
});
});
writeStream.write(part.name);
writeStream.end();
});
Die Angelegenheit
Ich kann anscheinend nicht herausfinden, wie dieses Bild aus mongoDB gelesen und im Frontend in einem HTML angezeigt wird<img>
Etikett
Ich habe dies bisher versucht aber es wird nur der Name der Datei angezeigt:
app.get('/picture', function(req, res) {
gfs.files.find({ filename: 'trooper.jpeg' }).toArray(function (err, files) {
if(files.length===0){
return res.status(400).send({
message: 'File not found'
});
}
res.writeHead(200, {'Content-Type': files[0].contentType});
var readstream = gfs.createReadStream({
filename: files[0].filename
});
readstream.on('data', function(chunk) {
res.write(chunk);
});
readstream.on('end', function() {
res.end();
});
readstream.on('error', function (err) {
console.log('An error occurred!', err);
throw err;
});
});
});
Ich habe den obigen Code von @ genommHie
Kann jemand bitte helfen. Ich bin schon seit TAGEN dabei festgefahren !!!!