【问题标题】:Express request.body is emptyExpress request.body 为空
【发布时间】:2023-03-08 05:43:02
【问题描述】:

这是我的代码,每当我使用邮递员或 cURL 发送帖子请求时,我都会得到一个空正文

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

app.use(express.json())

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

app.listen(3000)

https://i.stack.imgur.com/OqygG.png

【问题讨论】:

  • 您是否在启动服务器之前或AFTER 进行了更改?这看起来应该可以,但是您对快速服务器所做的任何更改都需要重新启动。
  • 我刚刚尝试了您的代码,它按预期工作,发送的正文在响应中返回。
  • 可能您必须重新启动应用才能使更改生效
  • 你有Content-Type: application/json吗?

标签: javascript node.js express nodes


【解决方案1】:

检查您的 html 表单名称标签。如果名称标签丢失,您将无法从 req.body 上获取数据。

<input name="example" id="example1" />

【讨论】:

    【解决方案2】:

    您应该使用内容类型标头。试试:

    ⚡  curl -X POST -d '{"title": "test title"}' -H "Content-Type: application/json" http://localhost:3000/
    {"title":"test title"}%  
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-06
      • 1970-01-01
      • 2023-02-25
      • 2018-01-06
      • 1970-01-01
      • 2016-07-23
      相关资源
      最近更新 更多