【发布时间】:2018-03-09 18:43:29
【问题描述】:
var UfcAPI = require('ufc-api');
var ufc = new UfcAPI({
version: '3'
});
const fighterId = [];
function getFighterId() {
ufc.fighters(function(err, res) {
for (let i = 0; i < res.body.length; i++) {
fighterId.push(res.body[i].id);
}
// console.log(fighterId);
})
};
function allFighters() {
for (let j = 0; j < fighterId.length; j++) {
request("http://ufc-data-api.ufc.com/api/v3/us/fighters/" + fighterId[j] + ".json", function(error, response, body) {
if (!error && response.statusCode === 200) {
console.log(JSON.parse(body));
}
})
}
};
第一个函数 getFighterId() 将通过 json 查找 UFC 名册上的所有战士。我捕获每个战斗机的所有 Id 并将其推送到 fighterId 数组。然后我想做一个循环用他们的 id 查询战士,以获取每个战士的更详细信息。
我知道我需要将数组完全填满,然后运行我的第二个函数。我找到了有关 Promise 和 Async 的信息,但对如何实现它感到非常困惑。
谢谢
【问题讨论】:
-
ufc.fighters返回promises@Nate -
@saikat-hajra
ufc.fighters来自npmjs.com/package/ufc-api。
标签: javascript node.js api loops request