Ответ не преобразуется в JSON - PullRequest
0 голосов
/ 13 февраля 2019

Я пытаюсь взять информацию из формы React и опубликовать ее в моей базе данных Rails, но я получаю ошибку "unexpected token '<' at position 0", которая означает, что мой ответ по-прежнему HTML, а не JSON.

Вот мой код:

export const createCar = car => {
return dispatch => {
    return fetch(`${API_URL}/cars/create`, {
        method: "POST",
        headers: {
            'Content-type': 'application/json'
        },
        body: JSON.stringify({ car: car })
    })
    .then(response => response.json())
    .then(car => {
        dispatch(addCar(car))
        dispatch(resetCarForm())
    })
    .catch(error => console.log(error + 'createCar POST failed'))
}

}

Есть ли причина, по которой он не конвертируется в JSON?

Кроме того, мне кажется, что я не могу вставить отладчик в свой код или, по крайней мере, в эту функцию - нужно ли его импортировать или что-то в этом роде?

1 Ответ

0 голосов
/ 13 февраля 2019

Я думаю, что ваш сервер отправляет вам обратно HTML, а затем вы пытаетесь разобрать его в response.json()

, используя попытку / перехват в этом блоке:

export const createCar = car => {
return dispatch => {
    return fetch(`${API_URL}/cars/create`, {
        method: "POST",
        headers: {
            'Content-type': 'application/json'
        },
        body: JSON.stringify({ car: car })
    })
    .then(response => {
         try {
            return response.json()
         } catch(error) {
            console.error(error);
         }
    })
    .then(car => {
        dispatch(addCar(car))
        dispatch(resetCarForm())
    })
    .catch(error => console.log(error + 'createCar POST failed'))
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...