【发布时间】:2020-12-28 07:17:14
【问题描述】:
由于某种原因,在尝试发出 post 请求时请求正文未定义:
这是我的路由器:
router.route("/").post(schoolController.createSchool);
这是我在 schoolController 中为 createSchool 输入的内容:
exports.createSchool = async (req, res) => {
try {
console.log(req.body);
// return undefined
const newSchool = await School.create(req.body);
res.status(201).json({
status: "success",
data: {
school: newSchool,
},
});
} catch (err) {
res.status(400).json({
status: "fail",
message: err,
});
}
};
另外,我正在关注 jonas 在 udemy 上的 nodejs 课程,他几乎拥有与此完全相同的东西,除了它用于处理旅游请求而不是学校
【问题讨论】:
-
您使用的解析器的配置可能有问题。根据您问题中的当前详细信息,无法判断它未定义的原因可能是什么
-
你添加了body-parser中间件吗? expressjs.com/en/resources/middleware/body-parser.html
-
没有什么是正文解析器中间件?
标签: node.js express post routes