我的 API 调用有问题。当我返回我的数据时,我得到一个包含数据的空数组。这是我调用 API 的代码。
function HeadQuartersGet() {
var data = [];
async function fetchData() {
var myHeaders = new Headers();
myHeaders.append("Content-Type", "application/json");
var requestOptions = {
method: 'GET',
headers: myHeaders,
redirect: 'follow'
};
var json = await fetch(url, requestOptions)
.then((response) => {
return response.json();
})
.then((result) => {
console.log(result);
});
data = JSON.stringify(json);
}
fetchData();
console.log(data);
return [data];
};
我的数据日志是空的。我需要做什么才能从结果中获取数据,因为结果日志中有我的数据。
在你的fetchData
函数内部,返回一个 json Promise,因为这是第一次执行 fetch 返回的,在调用fetchData
内部HeadQuartersGet
评估你对实际数据和 console.log 的承诺之后
async function HeadQuartersGet() {
let data = [];
async function fetchData() {
const myHeaders = new Headers();
myHeaders.append("Content-Type", "application/json");
const requestOptions = {
method: 'GET',
headers: myHeaders,
redirect: 'follow'
};
return await fetch(url, requestOptions);
}
data = await fetchData();
console.log(data);
return [data];
};
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句