@AlexNew22

Что возвращает нам fetch и как можно им правильней пользоваться?

Что полезного можно получить из fetch и почему, чтобы получить данные, нужно вызвать метод json, а не получать по умолчанию данные, которые уже в любом другом месте могли бы обработать черезJSON.parse(data)?
Да и в целом, почему его назвали json, если мы получаем в итоге уже обработанный объект данных, а не сам json?

[object Response] {
  arrayBuffer: function arrayBuffer() { [native code] },
  blob: function blob() { [native code] },
  body: [object ReadableStream] {
    cancel: function cancel() { [native code] },
    getReader: function getReader() { [native code] },
    locked: false,
    pipeThrough: function pipeThrough() { [native code] },
    pipeTo: function pipeTo() { [native code] },
    tee: function tee() { [native code] }
  },
  bodyUsed: false,
  clone: function clone() { [native code] },
  formData: function formData() { [native code] },
  headers: [object Headers] {
    append: function append() { [native code] },
    delete: function delete() { [native code] },
    entries: function entries() { [native code] },
    forEach: function forEach() { [native code] },
    get: function get() { [native code] },
    has: function has() { [native code] },
    keys: function keys() { [native code] },
    set: function set() { [native code] },
    values: function values() { [native code] }
  },
  json: function json() { [native code] },
  ok: true,
  redirected: false,
  status: 200,
  statusText: "",
  text: function text() { [native code] },
  type: "cors",
  url: "https://jsonplaceholder.typicode.com/todos/1"
}
  • Вопрос задан
  • 298 просмотров
Решения вопроса 3
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Из fetch вы получаете Promise.
При разрешении этого промиса (через .then или await) вы получаете объект Response, из которого можете достать данные любым удобным для вас методом.
Ответ написан
Комментировать
@Zerg89
Получаете вы объект и он в формате Json или xml или text как программа узнает в каком формате читать данные?
Обьясню по другому вам прислали текст на клинописи, прочтите и объясните смысл написанного. Вы ответите дайте словарь по клинописи. Надеюсь так будет понятно
Ответ написан
Комментировать
zkrvndm
@zkrvndm
Архитектор решений
Вызывайте метод text() если вам нужен ответ без парсинга JSON. По поводу того же, как всякие библиотеки типа jQuery.ajax пониманиют, что поступил именно JSON... обычно это проверяется через заголовки ответа, там будет указан тип контента.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы