を失敗しても、私は複数のHTTPリクエストとCUMULATEを作るしようとしている複数のHTTPリクエストの実行を続行:NodeJS非同期 - 次のコードを使用してNodeJSで結果を表示し、一部は
const async = require('async');
const request = require('request');
function httpGet(url, callback) {
const options = {
url : url,
json : true
};
request(options,
function(err, res, body) {
console.log("invoked")
callback(err, body);
}
).on('error', function(err) {
console.log(err)
});
}
const urls= [
"http://1.2.3.4:30500/status/health/summary",
"http://5.6.7.8:30505/status/health/summary"
];
async.map(urls, httpGet, function (err, res){
if (err)
console.log(err);
else
console.log(res);
});
ここで問題があれば、あります最初のリクエスト(http://1.2.3.4:30500/status/health/summary)が失敗し(接続の拒否など)、2番目のリクエストは処理されません。私は愚かな間違いをしているが、それを見つけることができないことを知っている。どんな助けにも感謝!
。 https://www.npmjs.com/package/request-promise – hisener
なぜ 'async.series'を使ったのですか?他の人のための最初の成功。 @hisenerは正しいです。要求機能は同期です。 –
'要求 'は同期していません! 'async.map() 'のセマンティクスは、エラーが発生したときに最終コールバックが直ちに呼び出されるようなものです。 – robertklep