alexandr2006
@alexandr2006
весь во фронтенде

Ошибка при отправке запроса с помощью fetch?

решил потихоньку выпилить jquery, начал с ajax-запросов.

Было:
function uAjax(url, data, requestType){
	return	$.ajax({
		'type':requestType,
		'url':url,
		'dataType': 'json',
		'data':data
	})
}
uAjax("/info", {}, "GET")


Все работает, запрос уходит, данные приходят. Переписал (согласно https://github.com/github/fetch):
import 'whatwg-fetch'
function uFetch(url, data, requestType){

	return fetch(url, {
		method: requestType,
		body: data
	});
}

uFetch("/info", {}, "GET").then((response) => {console.log(response.json());response.json()})


Запрос не отправляется + получаю букет ошибок: 83o0qIXpQF69pRzdFtsjsw.png

Что не так накодил?
  • Вопрос задан
  • 173 просмотра
Пригласить эксперта
Ответы на вопрос 2
@Sayonji
Во-первых, нельзя дважды вызывать response.json(). Во-вторых, этот метод возвращает промис, а не сам объект. В-третьих, если тело функции обернуто в фигурные скобки, то надо писать return, чтобы вернуть значение. Примерно так:
uFetch("/info", {}, "GET")
  .then((response) => response.json())
  .then((json) => {
    console.log(json)
    return json
  })
Далее, есть подозрение, что возвращается невалидный JSON. Попробуйте заменить на response.text() и посмотреть, останутся ли ошибки.
Ответ написан
Комментировать
alexandr2006
@alexandr2006 Автор вопроса
весь во фронтенде
Я же говорю - запрос не отправляется (в консоли я его не вижу), так что во первых-третьих не актуальны

i.prntscr.com/1olGmL8DRgW75m4dOeRyXQ.png
после response.text():
i.prntscr.com/SMu52MA3TlK1ZXKmeZpd4w.png
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы