2つの異なるAPIエンドポイントからデータを取得する必要があります。両方のデータをフェッチした後、これらのデータで何かを行う必要があります。複数のAPI呼び出しを同期
私は1つのAPIからデータを取得する方法を知っていますし、コールバック関数を呼び出してデータで何かを行うようにしています。私はこれを次のようにしています。これらは、他のAPIに接続するオプションもあり、いつでもデータと呼ばれるになるだろう、単一のコールバック関数を持っているでしょう
var options2 = {
host: "api.mydata2.org",
port: 8080,
path: "/otherdata/users/3",
method: "GET"
}
:私はのようなものを持ちたいだろうか今
function getJSON(options, cb) {
http.request(options, function(res){
var body = "";
res.on("data", function(chunk){
body += chunk;
});
res.on("end", function(){
var result = JSON.parse(body);
cb(null, result);
});
res.on("error", cb);
})
.on("error", cb)
.end();
}
var options = {
host: "api.mydata1.org",
port: 8080,
path: "/data/users/3",
method: "GET"
}
getJSON(options, function(err, result) {
if (err) {
return console.log("Error getting response: ", err);
}
// do something with the data
});
、 からの両方のAPIが読み込まれます。どうやってやるの?
約束を見てください:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Using_promisesこのトピックは、Stack Overflowで広くカバーされています。 [JavaScriptはすべての非同期呼び出しが終了するまで待つ](https://stackoverflow.com/q/34205266/218196) –