Node.js wyświetlający obrazy z GridFS Mongo
Mam aplikację nodejs, która używa Mongo i GridFS do przechowywania obrazów. Próbuję wyświetlić te obrazy w przeglądarce za pomocą Node.js (używając ekspresowego framework).
Obecnie używam:
res.writeHead(200, {'Content-Type': 'image/jpeg' });
res.end(imageStore.currentChunk.data.buffer, 'binary');
imageStore jest obiektem gridStore po utworzeniu nowego magazynu GridStore i wywołaniu gridStore.open (...)
var gridStore = new GridStore(self.collection.db, doc._id, doc.filename, 'r', {
chunk_size: doc.chunkSize
});
gridStore.open(callback);
Jestem pewien, że nie jest to właściwy sposób, wyświetla on uszkodzony obraz. Jakieś sugestie?
Dzięki!
Edytować:
Po aktualizacji do rodzimej wersji 1.0.2 mongodb próbuję przesyłać strumieniowo dane za pomocą:
res.contentType("image/jpeg");
var imageStream = imageStore.stream(true);
imageStream.pipe(res);
imageStore to obiekt po użyciugridStore.open(function(err, imageStore){ })