通過 POST 傳送和接收 JSON 資料

Version >= 6

獲取請求 promises 最初返回 Response 物件。這些將提供響應頭資訊,但它們不直接包含響應主體,甚至可能尚未載入。響應物件(如 .json())上的方法可用於等待響應主體載入,然後解析它。

const requestData = {
  method : 'getUsers'
};

const usersPromise = fetch('/api', {
  method : 'POST',
  body : JSON.stringify(requestData)
}).then(response => {
  if (!response.ok) {
    throw new Error("Got non-2XX response from API server.");
  }
  return response.json();
}).then(responseData => {
  return responseData.users;
});

usersPromise.then(users => {
  console.log("Known users: ", users);
}, error => {
  console.error("Failed to fetch users due to error: ", error);
});