我想我最害怕避免與我的節點JS的回調地獄。但我試圖做大量的API請求,並將其插入到我的數據庫中。節點中的JS Api請求循環
我的問題在這裏(當然)是我的for-loop在我完成我的請求和數據庫插入之前運行並遞增。
for(var i = 0; i <= 1 ; i++){
apiRequest = data[i];
apicall(apiRequest);
}
function apicall(urlApi){
request((urlApi), function(error, response, body){
if(error){
console.log("error");
} else if(!error && response.statusCode == 200){
var myobj = JSON.parse(body);
dbInsert(myobj);
}
});
}
function dbInsert(obj) {
//insert into database
}
如果其他人會來這個問題,我可以真實地建議我這篇文章,我通過joshvermaire讀取響應後發現:
http://www.sebastianseilund.com/nodejs-async-in-practice
查看async/await - 它們將允許您在apicall處於活動狀態時暫停。 – theGleep
'我'遞增不應該在你的情況下造成問題。你的問題可能是別的。 –