我将Api服务器从一个普通的 nodejs脚本转换成一个使用明确框架来改善稳定性的服务器。
我的问题之一是 你不能从回调中返回价值 因为原来的代码还在继续...
var _json = api.query();
不知怎的,我们更喜欢.query () 返回最终结果对象, 所以我们可以把它拼凑成 JSON, 然后把它传递给 变形的 enging 如此 :
// Render the display
res.render( posts-resp , {
title: res.app.settings.app_title,
_use_Callback: _use_Callback,
json: _json
});
但是, db 查询使用回调来处理查询结果, 因此无法返回这样的值。 在原始版本中, < em> db 脚本 em > 处理完成最后视图, 但我不希望它们像这样被绑在一起 。
query: function(){
db.query( this._buildQuery(), function(err, res){
if(err){ throw err; }
res.fetchAll(function(err, rows){
if(err){ throw err; }
db.query( SELECT FOUND_ROWS() as num, UNIX_TIMESTAMP() as query_timestamp; , function(err, cnt_res){
if(err){ throw err; }
cnt_res.fetchAll(function(err, cnt_rows){
var obj = {
results:rows,
total_results:cnt_rows[0].num,
current_offset:self.offset,
query_timestamp:cnt_rows[0].query_timestamp
};
// ... ?
});
});
});
});
}
我怎样才能妥善地获得数据并将其传送到转化系统?