Ivan Ivan - 11 months ago 69
Node.js Question

Express: Req.body is undefined after POST request

I'm using the express.bodyParser() before the app.router, and the headers seem to be right, but I'm still getting undefined on req.body:

var app = express();


The output of req.headers is this:

{ host: '',
connection: 'keep-alive',
'content-length': '0',
'cache-control': 'max-age=0',
accept: 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
origin: '',
'user-agent': 'Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.76 Safari/537.36',
'content-type': 'application/x-www-form-urlencoded',
referer: '',
'accept-encoding': 'gzip,deflate,sdch',
'accept-language': 'es-ES,es;q=0.8' }

And the post is declared like this:

app.post('/register/do', function(req, res) {

What am I doing wrong?

Answer Source

You got Content-Length: 0, so the problem is on the client side. Your Express code looks OK.