이신우
이신우

Reputation: 21

node js post request.body undefined

server.js

var express = require('express');
var app = express();
var bodyParser = require('body-parser');
var session = require('express-session');
var fs = require('fs');
var router = require('./router/main')(app, fs);

var server = app.listen(3000, function(){
  console.log('Express server has started on port 3000');
});

app.use(bodyParser.json());
app.use(bodyParser.urlencoded());

router/main.js

module.exports = function(app, fs)
{
  app.post('/addUser/', function(req, res){
        console.log(req.body);
    });
}

I use postman tool!! requets param {"password" : "pass","name" : "dltlsdn"}

but... req.body is undefind.... why..??

Upvotes: 0

Views: 1491

Answers (1)

Mukesh Sharma
Mukesh Sharma

Reputation: 9022

Reorder the app.use statement. Earlier you were processing the request before passing through the body-parser.

var express = require('express');
var app = express();
var bodyParser = require('body-parser');
var session = require('express-session');
var fs = require('fs');

//body parser before routes
app.use(bodyParser.json());
app.use(bodyParser.urlencoded());

var router = require('./router/main')(app, fs);

var server = app.listen(3000, function(){
   console.log('Express server has started on port 3000');
});

Hope it helped you.

Upvotes: 4

Related Questions