Express不接收来自angularjs的数据

时间:2015-06-25 23:19:03

标签: angularjs express

这是localhost服务器上的expressJS代码。

var express = require('express');
var path = require('path');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
var app = express();

app.use(express.static("../../03 AngularJS/99_Motorcycle_Angular"));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended: false}));

app.post("/cut_tag", function (req, res) {
    console.log("Data Coming..");
    console.log(req.body);
    console.log(JSON.stringify(req.body));
    res.send("OK");
});
module.exports = app;

这是我测试将数据发送到localhost服务器的angularjs代码。 (4种风格)

$http.post('http://localhost:3000/cut_tag',"54")
.success(function (data) {alert(data);} );

$http.post('http://localhost:3000/cut_tag',{t:"54"})
.success(function (data) {alert(data);} );

$http.post('http://localhost:3000/cut_tag',{'t':"54"})
.success(function (data) {
    alert(data);
});

$http({
method: 'POST',
url: 'http://localhost:3000/cut_tag',
data: "54",
headers: { "Content-Type": "application/json" }
}).success(function (data) {
    alert(data);
});

//The Output on Console is 
//Data Coming.. 
//{}
//{}

//Data Coming.. 
//{}
//{}

//Data Coming.. 
//{}
//{}

//Data Coming.. 
//{}
//{}

Angular App警报(“OK”); 但我不知道为什么console.log(req.body)没有数据。谢谢你的帮助。

1 个答案:

答案 0 :(得分:0)

现在,我可以通过添加数据大小限制来解决这个问题

app.use(bodyParser.json({limit: '50mb'})); 
app.use(bodyParser.urlencoded({limit: '50mb', extended: false}));