【问题标题】:"error": "message": "Cannot read property 'name' of undefined"“错误”:“消息”:“无法读取未定义的属性‘名称’”
【发布时间】:2021-02-05 21:53:39
【问题描述】:

所以,我正在尝试创建一个路由,并且我创建了一个应该管理 POST 数据的路由,并且我一直在邮递员中对其进行测试。看起来很多人都遇到了同样的问题,但我一直无法找到解决方案。我可以看到该名称没有价值,但我也看过一个视频,它应该与那段代码一起工作。我见过的人在邮递员中以 JSON 形式获得响应,我的人给了我下面显示的消息。

我的代码:

router.post('/', (req, res, next) => {
    const user = {
        name: req.body.name,
        eMail: req.body.eMail
    };
    res.status(201).json({
        message: 'Handling user',
        createdUser: user
    });
});

我从邮递员那里得到的答案:

{
    "error": {
        "message": "Cannot read property 'name' of undefined"
    }
}

【问题讨论】:

    标签: javascript node.js json macos postman


    【解决方案1】:

    您似乎使用的是 express。你在使用身体解析器吗?没有一个,req.body 将始终未定义,这看起来像您的问题。在定义任何路线之前尝试放置它。

    const bodyParser = require('body-parser');
    app.use(bodyParser.json()); // for parsing application/json
    

    Docs

    【讨论】:

      【解决方案2】:
      猜你喜欢
      • 2021-10-04
      • 1970-01-01
      • 2019-05-17
      • 1970-01-01
      • 2020-12-26
      • 2018-03-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多