1
我有以下express node.js應用程序。它使用'redis'npm軟件包。nodejs express應用程序不會返回json數組
app.get("/test",function(req,res){
var data = [];
client.HGETALL("receipts",function(err,obj){
for(var id in obj){
data.push(JSON.parse(obj[id]));
}
});
console.log(data);
res.json(data);
});
app.listen(3000);
代碼運行沒有錯誤;但是,返回到瀏覽器時,data
變量爲[]
。
奇怪的部分是,當我從命令行運行相同的redis命令時,數組被填充。
誰能告訴我這是怎麼回事?
Doh!我覺得是這樣的。本來我只是在做'res.send(data)',我試着把它放在回調中。但既然那是錯的,我也沒有看到那是解決方案。謝謝! – 2012-04-04 22:51:10
@MattPhillips,第一種方法應該工作得很好!? – davin 2012-04-04 22:56:49
所以你可以做res.send並傳遞json,它會正確設置標題?我發誓它沒有工作。 – 2012-04-04 23:00:04