簡體   English   中英

如何從 Ajax 請求 function 返回 JSON?

[英]How to return JSON from Ajax request function?

我想建立一個網站,使用客戶端調用 API 和 JavaScript。 我不知道該怎么做,所以我搜索了一下,發現了 Jquery。 然后我寫了發出請求的 function。 它看起來像下面這樣:

async function makeRequest(url) {
  await $.getJSON(url, function (data) {
    console.log(data);
    return data;
  });
}

這工作正常,打印語句打印接收到的數據。 但是,如果我從另一個 function 調用這個 function,它不會返回任何內容。 每次都顯示為未定義。 一個例子:

document.addEventListener("DOMContentLoaded", async function () {
  var players = await makeRequest(
    "https://phijoto.ddns.net/Playtime/playtime.json"
  );
  console.log(players);
});

async function makeRequest(url) {
  await $.getJSON(url, function (data) {
    console.log(data);
    return data;
  });
}

如果我運行它,它會通過第二個打印語句打印出接收到的數據,但第一個總是返回“未定義”。 我能做些什么呢?

你必須從makeRequest返回一些東西。

另外:不要混合回調和承諾,充其量它會使代碼混亂。

async function makeRequest(url) {
  const data = await $.getJSON(url);
  console.log(data);
  return data;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM