{ event.p-6ren">
gpt4 book ai didi

javascript - Req.body 在将对象传递给 API POST 路由时返回 { NaN : "" } in server console. 日志

转载 作者:行者123 更新时间:2023-11-29 10:58:12 25 4
gpt4 key购买 nike

当我发布到我的 API 路由以在我的集合中创建文档时出现错误。数据是正在发布的用户信息也是数据库

这是表单提交:

handleFormSubmit = (event) => {
event.preventDefault();
const userId = localStorage.getItem("userId")
const newForm = {
id: userId,
title: this.state.title,
main: this.state.main,
summary: this.state.summary
};
console.log(newForm);
API.addForm(newForm)
.then(response => {
console.log(response)
})
}

// =============== API =========== //

addForm: function(form) {
return axios.post("/api/form", + form);
},

客户端 console.log 打印出正确的对象以及对象中所有适当的值,但是当它到达后端服务器时,POST 主体返回 {NaN: ""} 抛出 UnhandledPromiseRejectionWarning 错误:验证错误并且响应失败

这是后端 API 路由:

// ======== Index.js for API ======= // 

router.use("/api",require("./apiRoutes.js")(passport));

// ============== apiRoutes.js ============= //

router.route("/form")
.post(formController.addRecipe);

// ============= Controller ============ //

addForm: function(req, res) {
console.log("addForm Function")
console.log("======================")
console.log(req.body)
db.Form.create(req.body)
.then(form => {
console.log(form)
return db.User.findOneAndUpdate({ _id: req.body.id }, { form: form._id }, { new:true });
})
.then(userInfo => {
res.json(userInfo);
})
}

最佳答案

在你的 addForm 函数中,axios.post 第二个参数是一个对象,你不需要 + 那里所以删除 +

addForm: function(form) {
return axios.post("/api/form", form);
}

关于javascript - Req.body 在将对象传递给 API POST 路由时返回 { NaN : "" } in server console. 日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52787002/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com