Fetch API

«Fetch API позволяет JavaScript обмениваться данными с сервером с помощью HTTP-запросов и является более совершенной заменой классу XMLHttpRequest.» Возвращает Promise.

Синтаксис

fetch(url, { options })

Пример GET запроса

fetch('https://jsonplaceholder.typicode.com/users')
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(error => console.error('Ошибка:', error))

Параметры запроса

  1. method — HTTP-метод (GET, POST, PUT, DELETE)
  2. headers — HTTP-заголовки
  3. body — тело запроса (для POST/PUT)
  4. mode — cors, no-cors, same-origin
  5. credentials — omit, same-origin, include

Свойства объекта Response

response.status      // HTTP код (200, 404...)
response.ok          // true если 200-299
response.headers     // заголовки
response.url         // URL запроса

Методы обработки ответа

response.text()       // текст
response.json()       // JSON
response.blob()       // файлы/изображения
response.formData()   // FormData
response.arrayBuffer()// ArrayBuffer
⚠️ fetch не бросает ошибку при HTTP-ошибках

Fetch отклоняет Promise только при сетевых ошибках. Всегда проверяй response.ok.