来自 API 的数据调用为空

离子

我的 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] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章