【发布时间】:2017-11-10 20:24:35
【问题描述】:
我有这个节点 js 程序,它应该在控制台中返回询问的变量,但它返回 undefined 这里是代码和我试图解析的输入:-
router.post('/createorder',function(req,res){
console.log(req.body.ProductName);
// var obj=JSON.parse(req.body);
res.send(req.body);
});
输入:
{
"ProductName":"Wine",
"ProductPrice":"500",
"ProductQuantity":"2",
"ProductCost":"1000",
"SellerId":"2"
}
这是我正在使用的主要模块
var express= require('express');
var routes=require('./routes/api');
var bodyparser=require('body-parser');
var mysql = require('mysql');
var db=mysql.createConnection({
host:'localhost',
user:'root',
password:'',
database:'nodemysql'
})
//setting up express
var app = express();
app.use(bodyparser.urlencoded({extended:false}));
app.use(bodyparser.json());
app.use(routes);
//listen for requests
/*app.get('/',function(req,res){
console.log('get trial method called');
res.send({name:'Atul'});
});*/
app.listen(3000,function(){
console.log('server started on port 3000 ');
});
我想访问特定对象以存储在数据库中?
【问题讨论】:
-
你很可能没有使用 bodyParser 中间件。
-
使用 bodyParser 中间件不是强制性的,但最好查看其余代码以更好地理解它。
-
i' 在主模块中使用它而不是在路由模块中使用它会导致问题吗?
-
如果你在主模块中使用它,你应该没有问题,假设你使用的是 expressJS(或类似的)并正确设置它。
标签: javascript json node.js