gpt4 book ai didi

javascript - 使用 Node.js 接收嵌套的 JSON 对象

转载 作者:太空宇宙 更新时间:2023-11-04 01:01:51 25 4
gpt4 key购买 nike

我在将嵌套 JSON 对象发布到我的 Node.js 服务器时遇到问题。

该对象应如下所示:

{
"name" : "Plan 1",
"schedule": [
{
"start": 0,
"days": [
{
"title" : "Day1"
}
]
}
]
}

这是我的 server.js 代码

router.route('/plans')
.post(function(req, res) {

console.log(JSON.stringify(req.body));

var plan = new Plan();
plan.name = req.body.name;
plan.tagline = req.body.tagline;
plan.duration = req.body.duration;
plan.schedule = req.body.schedule;

plan.save(function(err) {
if (err)
res.send(err);
res.send(plan);
});
})

以及一些用于发出请求的 python 代码。 (我尝试过使用Postman和curl并得到相同的结果)

import requests
payload = {"name" : "Plan 1", "schedule": [{"start": 0, "days": [{"title" : "Day1"}]}]}
r = requests.post("http://localhost:5000/plans", data=payload)
print(r.text)

这是 server.js 为 JSON.stringify(req.body) 输出的内容

{"name" : "Plan 1", "schedule" : ["start", "days"]}

然后实际上没有保存任何内容,因此 print(r.text) 输出:

{}

执行此操作的正确方法是什么?如果相关的话,我正在使用 MongoDB 进行存储,但看起来我的 server.js 甚至没有正确接收完整的 JSON。

最佳答案

来自 Python 请求文档:http://docs.python-requests.org/en/latest/user/quickstart/#custom-headers

>>> import json
>>> url = 'https://api.github.com/some/endpoint'
>>> payload = {'some': 'data'}
>>> headers = {'content-type': 'application/json'}

>>> r = requests.post(url, data=json.dumps(payload), headers=headers)

这对我来说很有效。谢谢

关于javascript - 使用 Node.js 接收嵌套的 JSON 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26329589/

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