【发布时间】:2011-06-21 15:34:53
【问题描述】:
在 node.js 中,它是事件驱动的,所有 I/O 都是通过回调完成的。所以我最终编写了如下代码:
app.get('/test', function (req, res) {
http.get('some/place', function (req1, res1) {
if (res1.statusCode == 200) {
res1.on('data', function (data) {
http.get('other/place?q=' + data, function (req2, res2) {
if (res2.statusCode == 200) {
res2.on('data', function (data) {
db.query(data).on('data', function (rows) {
res.writeHead(200)
res.end(JSON.stringify(rows))
})
})
}
})
})
}
})
})
这甚至不包括错误处理。
我能做些什么来解开这个烂摊子?
【问题讨论】:
-
哇!好吧,嵌套好了!
标签: node.js