Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

177
Visualizações
Cómo usar los datos devueltos de una solicitud de recuperación, en una solicitud de seguimiento

Estoy tratando de mostrar el clima de la ciudad que un usuario buscará por nombre. Estoy usando la primera API para permitir que el usuario busque por nombre de ciudad. eso devolverá un objeto de datos con la latitud y la longitud que luego usaré para ejecutar una segunda solicitud de búsqueda para obtener el pronóstico del tiempo para la región buscada por latitud y longitud. este es mi código actual que he trabajado.

 var citySearch = function() { inputFormEl = document.getElementById("city").value; const apiCall = `https://api.openweathermap.org/data/2.5/weather?&q=` + inputFormEl + apiKey; fetch(apiCall) .then(function(response) { response.json() .then(function(data) { console.log(data); var lat = data.coord.lat; var lon = data.coord.lon; getCity(data) }) }).then(function() { var secCall = `https://api.openweathermap.org/data/2.5/onecall?lat=${Lat}&lon=${Lon}&appid=087ab696412a7356255185b8f55d9574`; fetch(secCall) console.log(secCall); }) }
about 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Dentro de cada devolución de llamada then debe devolver la información que desea transmitir, que puede ser una promesa o simplemente un valor, para evitar el anidamiento que es típico del "infierno de devolución de llamada".

Y una vez que tenga la latitud y la longitud, utilícelas inmediatamente para hacer su próxima fetch .

Entonces se convierte en esto: eliminé su appid:

 fetch(apiCall) .then(function (response) { return response.json(); }).then(function (data) { console.log(data); getCity(data); let {lat, lon} = data.coord; // Just continue... var secCall = `https://api.openweathermap.org/data/2.5/onecall?lat=${Lat}&lon=${Lon}&appid=....`; console.log(secCall); return fetch(secCall); }).then(function (response) { return response.json(); }).then(function (data) { console.log(data.current.weather[0].description); });

Todo esto es más fácil con la sintaxis async/await :

 (async function() { let response = await fetch(apiCall); let data = await response.json(); console.log(data); getCity(data); let {lat, lon} = data.coord; var secCall = `https://api.openweathermap.org/data/2.5/onecall?lat=${Lat}&lon=${Lon}&appid=....`; console.log(secCall); let response2 = await fetch(secCall); let data2 = await response2.json(); console.log(data2.current.weather[0].description); })();
about 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda