Получение 422 с сервера - я неправильно передаю объект JSON?

Я работаю над проектом React, который отправляет данные на сервер node.js, работающий на локальном хосте. Фактический код здесь:

task = {text:e.target.value};
        console.log(task.text);
        task = JSON.stringify(task);
        console.log(task.text);
        console.log(task);

        axios.post('http://192.168.0.116:8080/todos', {task})
            .then(response => {console.log(response);
            this.axGetTasks(response.data);
            })
            .catch(error => {
                if (error.response) {
                    console.log(error.response);
                }
            })

Сервер возвращает 422 с этим объяснением: {данные: «текстовое поле должно присутствовать в json».

Console.log объекта, который я передаю:

{"text":"gdf"}

Сервер выполняет этот тест:

(!if.req.body.text)

Я предполагаю, что я искажаю ввод, но я не вижу ошибки, тем более что я полагаюсь на JSON.stringify. Я сделал ошибку при создании объекта задачи? Когда я пытаюсь использовать console.log(task.text); он возвращает undefined, но я понятия не имею, почему, так как у меня минимальный опыт работы с JSON. Я считаю, что формат, который я использую, соответствует стандартам. Буду признателен за любой вклад!

РЕДАКТИРОВАТЬ: как объект JSON прикреплен к URL-адресу? Это через "?" как параметр?


person Faire    schedule 12.12.2018    source источник
comment
Я пытался найти правильный ввод с Postman, пока безуспешно. http://.../todos/{'текст':'задача'}. Ошибка гласит то же самое: поле «текст» должно присутствовать в json   -  person Faire    schedule 12.12.2018


Ответы (1)


Axios действительно стригет себя. Удаление строк решило проблему.

person Faire    schedule 12.12.2018