我正在尝试在另一个api(https://api.wheretheiss.at/v1/satellites/25544)的URL中使用ISS api(https://api.wheretheiss.at/v1/coordinates/37.795517,-122.393693)上的纬度和经度坐标。我正在尝试使用坐标并将其输入到url中,而不是使用硬编码的坐标。
这是我到目前为止所做的...
https://api.wheretheiss.at/v1/coordinates/${latitude},${longitude}
注意
const api_url_id = 'https://api.wheretheiss.at/v1/satellites/25544'
//async await getISS function
async function getISS() {
const response = await fetch(api_url_id)
const data = await response.json()
const {
latitude,
longitude,
velocity,
visibility
} = data
}
async function getGeoLocation(latitude, longitude) {
const response2 = await fetch(`https://api.wheretheiss.at/v1/coordinates/${latitude},${longitude}`)
const data2 = await response2.json()
const {
timezone_id,
country_code
} = data2
console.log(data2.timezone_id,country_code)
}
getGeoLocation(data.latitude, data.longitude)
getISS()
答案 0 :(得分:1)
异步函数返回一个承诺,因此您可以使用。then()
您应该从 getISS 返回数据并使用 .then(),如下所示……
ido-file-name-all-completions
调用 getISS 函数,然后使用 then 调用带有必要数据的 getGeoLocation
// getISS function returns data
async function getISS() {
const response = await fetch(api_url_id);
const data = await response.json();
return data;
}