Как я могу сделать запрос API с результатами другого API?
Это для исторического приложения погоды. Я хочу использовать 3 API, один для широты и долготы, другой, который требует параметров широты и долготы и возвращает близлежащую id-станцию, а последний - для параметров id-станции от второго и возвращает температуру.
async componentDidMount(){
axios
.get('https://api.apixu.com/v1/current.json?key=' + WEATHER_KEY + '&q=' + 'navodari')
.then(res => {
this.setState({ lat: res.data.location.lat,
lon: res.data.location.lon
});
return axios.get('https://api.meteostat.net/v1/stations/nearby?lat='+ this.state.lat+'&lon'+ this.state.lon +'&limit=1&key=' + STATION_KEY);
})
.then(res => {
this.setState({ station: res.data.id });
return axios.get('https://api.meteostat.net/v1/history/daily?station=' + this.state.station + '&start=' +this.state.start + '&end=' +this.state.start+ '&key=' + STATION_KEY);
})
.then(response => {
this.setState({ temp: response.data.temperature});
console.log(this.state.temp);
}).catch(error => console.log(error.response));
Я ожидал сделать состояние temp с response.data.temperature
, но это дает мне ошибку, что
станция не определена. ("400 BAD REQUEST")
Не могли бы вы посоветовать мне правильное решение?