![](/img/trans.png)
[英]UnhandledPromiseRejectionWarning: TypeError: Cannot destructure property 'name' of 'req.body' as it is undefined
[英]req.body return a Object in json property name
我正在使用 js 制作表单,但 req.body 返回以下内容,我无法访问数据
{ 'object Object': '' }
//with JSON.stringify:
{ '{"A":"a","B":"b","C":"c"}': '' }
客户
var body = `{
"A": "a",
"B": "B",
"C": "c"
}`
body = JSON.parse(body) // Object { A: "a", B: "b", C: "C" }
body = JSON.stringify(body) // "{\"A\":\"a\",\"B\":\"b\",\"C\":\"c\"}"
const opts = {
method: "POST",
headers: {
"content-type": "application/x-www-form-urlencoded",
},
body
}
console.log(body)
fetch(`${document.URL}/post`, opts).then((response) => {
console.log(response.status);
console.log(response.json());
})
})
服务器
router.post("/post", auth, async (req, res) => {
console.log(req.body)
res.status(201)
res.end()
});
我想知道如何从这个 go
{ '{"A":"a","B":"b","C": "c"}': '' }
对此
{ A: "a", B:"b", C: "c"}
解决方案
谢谢Barmar和Phil,你的回答解决了
将"content-type": "application/x-www-form-urlencoded"
替换为"Content-type": "application/json",
在标头中添加app.use(express.json())
在 server.js
看一下这个
const obj = { '{"A":"a","B":"b","C": "c"}': '' };
const arr = Object.keys(obj);
console.log(JSON.parse(arr[0]));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.