【问题标题】:Body send but not received正文发送但未收到
【发布时间】:2022-01-08 17:29:08
【问题描述】:

嘿,我使用 react 应用调用 express 应用:

fetch('/api/sendmail', {method: 'POST', body: JSON.stringify(payload) })

有效载荷 =

    const payload = {
        fsdfdsdfsdfsdsfa: 1,
        b: 2
    };

在快递应用上,我尝试获取正文内容:

app.post("/api/sendmail", (req, res) => {
   console.log(req.body)
   res.json({ message: 'aa' });
});

但是console.log(req.body) 返回未定义

我该如何解决。

【问题讨论】:

    标签: javascript node.js reactjs


    【解决方案1】:

    我假设你只是在你的 init 文件中遗漏了这样的东西:

    app.use(bodyparser.json())

    还可以尝试将Content-Type: application/json 添加为您的请求标头

    【讨论】:

      【解决方案2】:

      我认为要让 express 能够解析 POST 请求,您需要一个 body-parser 中间件。

          var express = require('express')
          var bodyParser = require('body-parser')
          
          var app = express()
      
          var urlencodedParser = bodyParser.urlencoded({ extended: false })
      
          app.post('/login', urlencodedParser, function (req, res) {
              res.send('welcome, ' + req.body.username)
          })
      

      不过,您必须安装 "body-parser"。我听说 express 有它自己的 body-parser 现在但我没有这方面的信息,所以你必须阅读文档

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-07-09
        • 1970-01-01
        • 2017-12-03
        • 2020-10-01
        • 2015-09-11
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多