javascript - req.body 没有显示为键值对之一,但 req.headers 和其他文件却显示为键值对之一

标签 javascript node.js express postman advanced-rest-client

Sample 'Advanced REST Client' Request

我正在使用 Postman 和高级 REST 客户端为以下代码创建基本 POST 请求 -

'use strict';
var express = require('express');
var bodyParser = require('body-parser');
var app = express();
var http = require('http');

// configure the app to use bodyParser()
app.use(bodyParser.urlencoded({
    extended: false
}));
app.use(bodyParser.json());
//app.listen(6666);

http.createServer(function (req, res) {
    h2s(req, res);
}).listen(6666, '127.0.0.1');

console.log('Server running at http://127.0.0.1:6666/');

module.exports = function h2s(req, res) {
    console.log("inside h2s");
    app.use(function (req, res) {
        console.log("req.body : " + req.body);
        res.send("OK");
    });
}

但是,当我调试时,我发现“req对象树”中缺少req.body。更奇怪的是我对 req.headers 所做的所有更改都在 req 对象树中可用。

看起来我似乎犯了一个小错误,但我无法弄清楚。排查了一个小时左右的故障,但没有成功!

你们谁能弄清楚为什么 req.body 似乎从 req 对象树中丢失了?

对我有很大帮助。谢谢!

最佳答案

您的代码中似乎存在几个问题:

而不是

http.createServer(function (req, res) {
    h2s(req, res);
 }).listen(6666, '127.0.0.1');

console.log('Server running at http://127.0.0.1:6666/');

module.exports = function h2s(req, res) {
    console.log("inside h2s");
    app.use(function (req, res) {
    console.log("req.body : " + req.body);
    res.send("OK");
   });
}

要创建服务器,请尝试

http.createServer(app).listen(8000, '127.0.0.1'); //using http

或者(直接使用 express )

app.listen(8000,function(){
    console.log('Server running at http://127.0.0.1:8000/');
});

然后为您的请求注册一个处理函数,您可以在其中访问 req.body

app.use(function (req, res) {
    console.log("req.body : " + req.body);
    res.send("OK");
});

关于javascript - req.body 没有显示为键值对之一,但 req.headers 和其他文件却显示为键值对之一,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44515146/

相关文章:

javascript - 带有 require.js 的 Jssor slider

javascript - Angular 2 : TypeError: core_1. NgModule 不是函数

node.js - Node.JS 中带有自签名证书的 HTTPS 代理

javascript - 对于通过快速 http 响应返回的 json 对象,NodeJS 'assert' 测试失败

javascript - 通过 FastCGI 使用 ExpressJS 应用程序

javascript - 随机播放图像 javascript/jquery

数组的 JavaScript 性能

node.js - 小型 Node.js 应用程序 Pod 的 GKE CPU 不足

javascript - sequelize 将日期与日期时间戳进行比较

javascript - 我如何将socket.io分离为socket.js文件,并在router.js中使用它