J'utilise gridfs-stream https://github.com/aheckmann/gridfs-stream et je suis en train d'afficher l'image à partir de gridFS.
Lors de la lecture des données, il me donne la sortie suivante. Lorsque j'ajoute ces données à <img src="data:image/jpeg;base64,(data)">
, l'image ne s'affiche pas.
gfs // create a read stream from gfs... .createReadStream({ filename: 'error1.png' }) // and pipe it to Express' response .pipe(res);
Rés. De sortie: –
Edité: –
J'ai essayé ceci: –
img.src = 'data:image/jpeg;base64,' + btoa(res);
La sortie rendue est: –
<img src="data:image/jpeg;base64,W29iamVjdCBPYmplY3Rd">
Aucune image n'est affichée.
J'utilise le fichier de démonstration:
var rstream = fs.createReadStream('test.png'); var bufs = []; rstream.on('data', function(chunk) { bufs.push(chunk); }).on('end', function() { // done var fbuf = Buffer.concat(bufs); var base64 = (fbuf.toString('base64')); res.send('<img src="data:image/jpeg;base64,' + base64 + '">'); });