Nodejs ve express kullanarak, JSON kullanarak bir veya birden çok nesneyi (dizi) döndürmek istiyorum. Aşağıdaki kodda bir seferde bir JSON nesnesi çıkardım. Çalışıyor ama tam olarak istediğim bu değil. Çok sayıda nesnem olduğu için üretilen yanıt geçerli bir JSON yanıtı değil.
Tüm nesneleri bir diziye ekleyebileceğimi ve bu diziyi res.end'de döndürebileceğimi çok iyi biliyorum. Ancak korkarım ki bu işlem ağırlaşabilir ve bellek yoğun olabilir.
Bunu nodejs ile elde etmenin doğru yolu nedir? Query.each, aramak için doğru yöntem mi?
app.get('/users/:email/messages/unread', function(req, res, next) {
var query = MessageInfo
.find({ $and: [ { 'email': req.params.email }, { 'hasBeenRead': false } ] });
res.writeHead(200, { 'Content-Type': 'application/json' });
query.each(function(err, msg) {
if (msg) {
res.write(JSON.stringify({ msgId: msg.fileName }));
} else {
res.end();
}
});
});