1

我正在开发一个将数据推送到在 localhost 上运行的 node.js 服务器的 React 项目。实际代码在这里:

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 并解释如下:{data: "'text' field must be present in json"。

我正在传递的对象的 Console.log:

{"text":"gdf"}

服务器正在运行此测试:

(!if.req.body.text)

我想我输入错误,但我看不到错误 - 特别是当我依赖 JSON.stringify 时。创建任务对象时我犯了错误吗?当我尝试 console.log(task.text); 它返回未定义 - 但我不知道为什么,因为我对 JSON 的经验很少。我相信我使用的格式符合标准。我将不胜感激任何输入!

编辑:JSON 对象如何附加到 URL?是通过“?” 作为参数?

4

1 回答 1

0

Axios 确实对自身进行了字符串化。删除字符串化解决了这个问题。

于 2018-12-12T21:36:00.910 回答