如何在邮递员的响应中获取“名称”值

时间:2019-09-27 11:51:17

标签: javascript node.js api express postman

我正在尝试在邮递员中发出HTTP POST请求。在我的项目中,我使用的是Nodejs的express框架。在邮递员中,当我发布{   “ name”:'course2',},在我的响应中,我只能看到其ID {“ id”:2}。我想在响应中看到ID和名称-{“ id”:2,“名称”:“ course2”}

我用“ id”和“ name”对一门课程进行了硬编码。但是,当我尝试发出HTTP发布请求并创建带有名称和ID的新课程时,在我的响应中,我只会获得ID,而不是课程名称。

index.js

const express = require('express');
const app = express();

app.use(express.json());

const courses = [{id : 1, name : 'course1'}];

app.post('/api/courses/', (req, res) => {
    const course = {
        id: courses.length + 1,
        name: req.body.name
    };
    courses.push(course);
    res.send(course);
});

const port = process.env.PORT || 3000;
app.listen(port, () => console.log(`listening on port ${port}...`));

我想在响应中看到ID和名称-{"id":2,"name":"course2"}

2 个答案:

答案 0 :(得分:1)

邮递员以JSON格式发送数据,例如:

{ "name":"Petra", } 发送前选择Json格式!

答案 1 :(得分:0)

要使此代码正常工作,您必须像邮递员一样选择原始的正文,如所附图片所示。

您应该添加以下行来处理x-www-form-urlencoded值:

app.use(express.urlencoded({extended: true}))

Postman snapshot