如何在Node.js中获取post参数

时间:2016-09-13 07:37:39

标签: node.js express

我无法在我的节点js中获取post参数,当我把控制台放在未定义但是当我从postman发布参数时它正在工作。可以有人建议帮助吗?

exports.login = function( req, res ) {
console.log(req.body)
  var query = 'select * from profile where email = ? and password = ?'; 
 connection.query(query,[req.body.email,req.body.password],function(error,result,rows,fields){
    if(!!error){console.log(error)
      console.log('fail');
    }else{
      console.log(result);
      res.send(result);
    }
  // }

  });}

我的快递代码,

    var express = require('express')
  , cors = require('cors')
  , app = express(); 

var admin = require('../controller/user'); 
 router.post('/login',cors(), admin.login);

2 个答案:

答案 0 :(得分:2)

始终将$(document).on('click', '.address_remove_link', function(e) { var id = $(this).attr("data-id"); $.ajax({ type: 'POST', url: 'inc/controlllers/detele_shipping_addr.php', data: { internalId: id }, success: function(response) { $(this).parent().closest('div').hide(200); }.bind(this), // *** error: function(data) { console.log("error"); } }); }); 放在所有路线之前。喜欢这个

body-parser

如果你在任何路线之前使用它,那么其他明智的方法总是得到 var app=express(); app.use(bodyParser.json()); app.use(bodyParser.urlencoded({ extended: true })); 值,因为身体尚未解析。

答案 1 :(得分:0)

您忘记使用bodyParser。首先使用命令

安装它
npm install body-parser --save

然后将以下内容添加到您的应用

var bodyParser = require('body-parser');
app.use(bodyParser.json()); // support json encoded bodies
app.use(bodyParser.urlencoded({ extended: true })); // support encoded bodies

之后,您可以使用req.body