繁体   English   中英

Node.js - req.body 空对象

[英]Node.js - req.body empty object

我有这段代码:

const bodyParser = require("body-parser");
const express = require("express");
const app = express();

app.use(express.json());
app.use(bodyParser.json());

app.post("/api/foo", (request, response) => {
  let foo = {
    fooName: request.body.fooName
  };
  console.log(request.body);
  console.log(foo);
  response.send(foo);

});

当我通过 Postman 发出 POST 请求时,我可以在控制台日志中看到req.body设置为空对象{}和 myVar undefined

任何想法我做错了什么?

这些是我在 Firefox 中使用 RESTClient 时的截图

在此处输入图像描述

当我设置 fooName 时,它会像这样添加到正文部分,然后我点击提交

在此处输入图像描述

这就是我在终端中得到的

在此处输入图像描述

您可以使您的简单 API看起来像下面的代码:

const express = require('express');

const app = express();

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

app.post('/api/foo', (req, res) => {
  const { fooName } = req.body;
  let myVar = { fooName };
  console.log(req.body)
  console.log(myVar);
  res.send(myVar);
});

app.listen(3000, () => {
  console.log('Server is up');
})

⏱ 现在,您可以调用端点:`localhost:3000/api/foo

确保,如果您使用的是邮递员,请不要忘记在发送请求之前将您的json object添加到body中。

例如:在邮递员中,您可以看到下图

在此处输入图像描述

我希望它可以帮助你。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM