我有一个nodeJS应用程序,它从API请求一次数据。然后我想通过使用单独的函数对这些数据进行一些处理。但是,由于AJAX是异步的,我不得不按如下方式使用异步:
async.series(
[
function(callback) { getContentFromAPI("banana",callback); },
function(callback) { doSomeProcess1(callback); },
function(callback) { doSomeProcess2(callback); },
function(callback) { doSomeProcess3(callback); },
function(callback) { doSomeProcess4(callback); },
]
);
有什么办法可以做得更好吗?我只是请求一个异步进程,并且希望避免使用异步,因为所有其他进程都是同步的。
我该怎么办?
答案 0 :(得分:1)
但是,由于AJAX是异步的,我不得不使用async,如下所示
你过分复杂了一个非常简单和常见的过程...我不知道任何getContentFromAPI的“签名”,但是,如果它遵循“标准”节点回调“签名” - 那么你的过程应该很简单如
getContentFromAPI("banana", function(error, data) {
if (error) {
// your error handling goes here
} else {
doSomeProcess1();
doSomeProcess2();
doSomeProcess3();
doSomeProcess4();
}
});