0
私は非同期APIを実装し、私のルータの中で非同期APIリクエストアクションを要求しています。エンドポイントは単なるクエリ文字列であり、すべての呼び出しの結果で配列またはオブジェクトを返そうとしています。今のところ2つしかありません:Asyncとリクエストパッケージ(NodeJS/Express)を使用した複数のAPI呼び出し
router.get('/', function(req, res) {
async.parallel([
function(next) {
request(queryString + 'end point string', function(error, response, body) {
if (!error && response.statusCode == 200) {
var unsPAM = JSON.parse(body);
};
console.log(error);
});
},
function(next) {
request(queryString + 'end point string', function(error, response, body) {
if (!error && response.statusCode == 200) {
var unsAll = JSON.parse(body);
};
console.log(error);
});
}],
function(err, results) {
res.render("api-results", [results]);
});
});
これは私がやっていることのちょうどです。私がconsole.logに要求後の各変数の結果が正常に動作しても、何も返されず、自分のejsテンプレートが提供されていません。
私も様々なフォーマット(配列/オブジェクト形式)で、以下のようなものを使用して試してみましたが、私はそれが働くように見えることはできません:
res.render("api-results", { unsPAM: unsPAM, unsAll: unsAll });
私はその考えて要求の結果ではないので何とか非同期配列に変換します。任意のアドバイス/ベストプラクティスのソリューション/アイデアの変更は非常に高く評価されます。
ありがとうございます。
ありがとうございます!これは素晴らしかったです。あなたはRTFMの意味を正確に聞いてもらえますか?クイックグーグル検索では、あなたが使った文脈では私の質問に本当に答えなかった。非常に高く評価。受け入れられた答え。 – Lukon
[RTFM](https://en.wikipedia.org/wiki/RTFM)。それは冗談で意味されていた。 –
ああ。本当に十分です。私はあなたの助けに関係なく、私はドキュメントでこれを逃したお詫び申し上げます。再度、感謝します。 – Lukon