【问题标题】:How to use post method in node js?如何在节点 js 中使用 post 方法?
【发布时间】:2021-08-29 06:30:03
【问题描述】:

我有一个节点 js 文件,其中

我正在执行两个数字的总和

使用postman发送数据和post方法

var express = require('express');
var bodyParser = require('body-parser');
var app = express();
app.use(bodyParser.urlencoded({extended:false}));
app.post('/listUsers', function (req, res) {
var f = parseInt(req.body.f);
    console.log("hello" + f);
var l = parseInt(req.body.l);
  var sum = Number(f + l);
  res.send('The sum is: ' + Number(sum));
})
var server = app.listen(8080, function () {
   var host = server.address().address
   var port = server.address().port
   console.log("Example app listening at http://%s:%s", host, port)
})

这里我从邮递员那里发送数据f

和NaN 数据错误 这是我发送数据的邮递员的屏幕截图

enter image description here

【问题讨论】:

    标签: node.js express post postman node-modules


    【解决方案1】:
    app.use(bodyParser.urlencoded({extended:false}));
    

    我猜这已被弃用。 您可以删除上面的行,然后像下面一样更改它,也可以添加其他行。如果可行,请告诉我们。

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

    【讨论】:

      【解决方案2】:

      您没有使用body parser 将正文数据解析为json。在sn-p下面使用。

      app.use(bodyParser.json());
      

      【讨论】:

      • 如果我想通过表单数据发送它们怎么办?
      • 您可以为此使用 multer。更多信息请参考link。
      【解决方案3】:

      您能否在使用 parseInt(req.body.f) 之前登录 req.body (console.log(req.body)) 并告诉我们您得到了什么?

      我认为这与解析有关。

      问候,

      【讨论】:

      • {} 我在我的控制台中得到了这个,当我做console.log(req.body)
      • 您可以张贴您使用邮递员发送的内容的屏幕截图吗?因为看起来您没有在请求正文中发送数据。
      • 我已经编辑了我的问题并添加了 screenshort init
      • 好的,我找到了解决方案,您需要在邮递员中以“x-www-form-urlencoded”而不是“form-data”的形式发送它们
      猜你喜欢
      • 2021-05-04
      • 1970-01-01
      • 2011-04-05
      • 1970-01-01
      • 1970-01-01
      • 2021-06-14
      • 2019-12-05
      • 2019-02-24
      • 1970-01-01
      相关资源
      最近更新 更多