【发布时间】:2022-01-15 13:02:50
【问题描述】:
我有一组加密硬币 ID,我需要在 API 调用中发送这些 ID,以获取每个硬币的数据。如何迭代它并发送 API 调用?
正在存储的 IDs 数组:
const getIds = async () => {
Axios.get(
"https://api.coingecko.com/api/v3/coins/markets?vs_currency=usd&order=market_cap_desc&per_page=100&page=1&sparkline=false"
).then((response) =>
setCoinIds((coinIds) => [
...coinIds,
...response.data.map((res) => res.id),
])
);
};
硬币详情 API。 {coin_id} 是我需要针对每个 ID 迭代和发送 api 调用的地方。
export const getCoinsData = async () => {
try {
const response = await Axios.get(
"https://api.coingecko.com/api/v3/coins/${coin_id)"
);
return response.data;
} catch (e) {
console.log(e);
}
};
最后,我需要将所有硬币数据存储在一个集体对象中:
const fetchCoinData = async () => {
setLoading(true);
const fetchedCoinData = await getCoinsData();
setData(fetchedCoinData);
setLoading(false);
};
【问题讨论】:
-
检查是否存在接受id数组的端点。
-
@Husnain Mehmood 考虑到 API 调用的速率限制,请检查我的答案。
标签: javascript reactjs