私のルートadd-usersの1つでPOSTリクエストを行っています。成功と呼ばれる配列を作成しました。要求が応答を返すと、次のAPI呼び出しをトリガーします。NODE - 次回のAPIコールをトリガーする前に1回のAPIコールが完了するまで待つ
APIリクエストをすぐに送信すると思われるため、現時点では機能しません。私は解決策は、最初の応答が応答を返して終了し、次のAPI呼び出しをトリガするまで待つことだと思います。
この仮定は正しいですか?もしそうなら、誰もこれを実装する方法をアドバイスできますか?私は使用しようとしました.on('end'....
下記の私のコードを見てください。
app.get('/add-users', function (req, res) {
var success = [];
var count = 0;
for(var i = 0; i < users.length; i++) {
var name = users[i].userId;
request({
url: url,
headers: {
'Authorization': 'Bearer ' + users[i].accessToken,
'Content-Type': 'application/json'
},
method: 'PUT',
json: true
}, function(err, resp, body){
if (!err && resp.statusCode === 200) {
success.push(name);
}
})
.on('end', function(){
console.log('this is the end');
count++;
if(count === users.length) {
res.json(success);
}
});
}
});
これを今見てみましょう。感謝のコスタス –
@phantomは例外をスローしますか? (ごめんなさいあなたのコメントを間違って削除しました) – Kostas
そのすべてがうまく動作していますが、私のエラーでした。素晴らしい解決策 –