Node.js exibindo imagens do GridFS do Mongo
Eu tenho um aplicativo nodejs que usa o Mongo e GridFS para armazenar imagens. Eu estou tentando exibir essas imagens para o navegador via Node.js (usando o framework expresso).
Atualmente estou usando:
res.writeHead(200, {'Content-Type': 'image/jpeg' });
res.end(imageStore.currentChunk.data.buffer, 'binary');
imageStore é um objeto gridStore após criar uma nova GridStore e chamar gridStore.open (...)
var gridStore = new GridStore(self.collection.db, doc._id, doc.filename, 'r', {
chunk_size: doc.chunkSize
});
gridStore.open(callback);
Tenho certeza que este não é o caminho certo, ele exibe uma imagem quebrada. Alguma sugestão?
Obrigado!
Editar:
Depois de atualizar para o mongodb nativo 1.0.2, estou tentando transmitir os dados usando:
res.contentType("image/jpeg");
var imageStream = imageStore.stream(true);
imageStream.pipe(res);
imageStore é o objeto depois de usargridStore.open(function(err, imageStore){ })