node.js - 使用 Express 在 Node 中 Req.body 未定义

标签 node.js express postman

我正在使用 express 。
这是我尝试过的代码,在 user.controller 中,我未定义。

index.js

    const express = require('express');
    const mongoose = require('mongoose');
    const cors = require('cors');
    var bodyParser = require('body-parser');

    const app = express();

    //import route
    const userRoutes = require('./routes/user');

    //use express function
    app.use(cors());
    app.use(express.json());
    app.use(bodyParser.json()); // commenting this line also did not worked
    app.use(bodyParser.urlencoded({ extended: true })); // commenting this line also did not worked
    app.use(express.urlencoded({ extended: false }));

    app.use('/user' , userRoutes);

user.js(路由器)

const express = require('express');
const userController = require('../controller/user.controller');

var router = express.Router();

router.post('/signUp' , userController.signUp);

module.exports = router;

user.controller.js

const userModel = require('../models/user.model');
var userController = {};

userController.signUp = function(req, res){
    console.log("it works ======>" , req.body); // here i m getting undefined .
}

module.exports = userController;

这是我从 postman 寄来的 body enter image description here

这是我的标题。 enter image description here

我已经浏览了所有的SO链接并尝试了所有的方法,但没有成功,因此我单独询问。


我没有得到这种奇怪的行为。

最佳答案

在 postman 正文选项中,当您选择原始和 JSON postman 会自动添加 Content-Type: application/json header 。但您似乎取消选中该 header 。

Postman 不会发送未经检查的 header 。所以在express端无法访问请求体。

当您检查(选择)该 header 并尝试时,它将起作用。

如果您使用 Express 版本 4.16+,则无需安装和使用 body-parser 软件包。

关于node.js - 使用 Express 在 Node 中 Req.body 未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59451739/

相关文章:

javascript - 如何处理来自fs readline.Interface异步迭代器的错误

javascript - Pyodide 无法将 xlsx 文件读入 pandas

node.js - 使用 Express 和 Mongoose 进行 BasicAuth

javascript - 如何从 Angular 路由中排除路由?

javascript - 为什么我的 JavaScript 代码收到“"No ' Access-Control-Allow-Origin' header is present on the requested resources”错误,而 Postman 却没有?

javascript - 带 promise 的 Koa.js 请求挂起

node.js - Webpack 和 GoogleApis 端点路径问题

Javascript - 如何用 promise 返回对象

firebase - 我可以将 postman 用于在Firebase中用作函数的onCall方法吗?

cookies - 如何生成有效的 Cookie