Estoy usando la API de Coingecko para datos de precios y tiempo (Unix) para mostrar esto en un gráfico, pero el punto final que estoy usando solo admite una ID por solicitud.
document.onreadystatechange = async () => { if (document.readyState === "complete") { const coin = "bitcoin"; const currency = "brl"; const response = await fetch( `https://api.coingecko.com/api/v3/coins/${coin}/market_chart?vs_currency=${currency}&days=10&interval=hourly ` ); const data = await response.json(); const prices = data.prices.map((e) => e[1]); const date = data.prices.map(i => i[0]);necesito que la funcion haga lo mismo tambien para solana, cardano, ripple, dash y litecoin
Si su API solo admite una ID por solicitud y necesita varias ID, deberá realizar varias solicitudes.
Una forma de hacerlo en paralelo y esperar a que todo se complete antes de continuar sería
const data = await Promise.all([ fetch(endpoint1).then(response => response.json()), fetch(endpoint2).then(response => response.json()), fetch(endpoint3).then(response => response.json()) ]); Lo anterior dará como resultado data que contienen una matriz de las respuestas para cada punto final: data[0] será el json de endpoint1, data[1] de endpoint2, y así sucesivamente. Tendrá que recorrerlos paso a paso para obtener los precios y las fechas de cada una de las ID (obviamente, no tendría sentido que Promise.all() intente fusionar todas las respuestas en una, porque no tendría forma de saber qué precio fue con qué ID.)