【发布时间】:2021-07-22 09:40:36
【问题描述】:
所以我从 nodejs 服务器发布数据
发布请求
{
"id": "285104348274884628",
"username": "TEST USERNAME",
"apiKey": "5WA8G5LUYPJB8RII64RE443EFTTY-PY"
}
我在 Express 服务器中的邮政编码:
app.post('/api/v1/admin/users', (req, res) => {
const users = req.body;
user = JSON.stringify(users)
userModel.push(user);
res.status(201).json({
error: false,
message: 'Created User',
time: 0
})
});
我尝试在快速服务器中获取数据
app.get('/api/v1/admin/users', (req, res) => {
res.status(200).send(userModel)
});
我的问题是当我得到数据时是这样的响应
[
{
"id": "655881699304931368",
"username": "KASKUSTTV",
"apiKey": "5WA7G5LUYPJB8RII64RE443EFTTY-PY"
},
"{\"{\\r\\n \\\"id\\\": \\\"285104348274884628\\\",\\r\\n \\\"username\\\": \\\"TEST USERNAME\\\",\\r\\n \\\"apiKey\\\": \\\"5WA8G5LUYPJB8RII64RE443EFTTY-PY\\\"\\r\\n}\":\"\"}"
]
我怎样才能让它像这样响应?
[
{
"id": "655881699304931368",
"username": "KASKUSTTV",
"apiKey": "5WA7G5LUYPJB8RII64RE443EFTTY-PY"
},
{
"id": "285104348274884628",
"username": "TEST USERNAME",
"apiKey": "5WA8G5LUYPJB8RII64RE443EFTTY-PY"
}
]
【问题讨论】:
-
尝试使用 JSON.parse() 而不是 JSON.stringify()?
-
req.body已经是一个字符串。您需要对其进行解析以从 JSON 中获取对象。 -
上面写着
Cannot convert object to primitive value at JSON.parse -
您必须在 POST 代码中进行字符串化吗?它可能在您的数据模型中插入错误。尝试删除字符串化。
-
nvm 我忘记设置 contentType 应用程序/json,但请帮忙
标签: javascript node.js json express post