node.js用のMongoJSドライバーを使用してデータを取得しようとしています。使用しているコードは次のとおりです。
req.on('end', function(){
var decodedBody = querystring.parse(fullBody);
story=decodedBody.name;
var z=new Array();
console.log(story);
res.writeHead(200,{'Content-Type': 'text/html'});
res.write('<html><body>');
db.frames.find({str_id:story}).toArray(function(err,doc){
console.log(doc);
for(var t=0;t<doc.length;t++)
{
var picid=doc[t].pic_id;
console.log(picid);
db.pictures.find({_id:picid}).toArray(function(err,pic){
res.write('<img src="'+pic[0].name+'"/>');
});
}
})
res.end('</body></html>');
});
ここでの問題は、コードの非同期性のために応答が最初に終了し、次にデータベースのブロック内のコードが実行され、そのためブラウザに何も表示されないことです。この場合は画像です。よろしくお願いします。