首页 > 解决方案 > 使用 POST 请求传递 JSON 数据后无法从 Postman 获得响应响应

问题描述

我正在使用包含电子邮件和密码的 JSON 数据从 Postman 发出 POST 请求,但是当我试图在 Postman 的响应窗口中显示它时,它什么也没显示。

似乎 POST 请求没有通过请求发送 JSON 数据,或者我在访问请求数据时可能出错了。

这是我的代码:

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

    const database = {
      users: [
        {
          id: "1234",
          name: "john",
          email: "john@gmail.com",
          password: "john",
          entries: 0,
          joined: new Date()
        },
        {
          id: "123",
          name: "sally",
          email: "sally@gmail.com",
          password: "sally",
          entries: 0,
          joined: new Date()
        }
      ]
    };

    app.get("/", (req, res) => {
      res.send("This is working Get");
    });

    app.post("/signin", (req, res) => {
      res.json(req.body);
    });

    app.listen(3000, () => {
      console.log("Server Started at port number 3000");
    });

在此处输入图像描述

标签: node.jspostman

解决方案


第 1 步: 如果您使用的是发出请求,raw(application/json)那么您需要在 npm 下安装它将解析您的请求数据,

npm install body-parser --save

请通过以下链接获取更多信息:

https://www.npmjs.com/package/body-parser

第 2 步: 您需要在服务器文件中添加以下行

var bodyParser = require("body-parser");
app.use(bodyParser.urlencoded({
    extended: false
}));
app.use(bodyParser.json())

第 3 步:集成后,bodyParser您可以使用req.body

这是您的解决方案代码:

var express = require("express");
var bodyParser = require("body-parser");

var app = express();

const database = {
    users: [{
            id: "1234",
            name: "john",
            email: "john@gmail.com",
            password: "john",
            entries: 0,
            joined: new Date()
        },
        {
            id: "123",
            name: "sally",
            email: "sally@gmail.com",
            password: "sally",
            entries: 0,
            joined: new Date()
        }
    ]
};

app.use(bodyParser.urlencoded({
    extended: false
}));
app.use(bodyParser.json())

app.post("/signin", (req, res) => {
    res.json(req.body);
});

app.listen(8080, () => {
    console.log("Server has been started");
});

推荐阅读