2016-06-08 51 views
0

现在我的情况是,我有一个来自Angular模块的发布请求,试图将一些数据发送到使用node.js和Express处理的URL。从角度发布请求中检索数据

tickets.js:

$http(
    { 
     method: "post", 
     url: "/ticketDetail", 
     headers: {"application/json"}, 
     data: {detail : "test"} 
    }).then(function successCallback(response) 
    { 
     $scope.detail = response.data; 
    }, function errorCallback(response){}); 

app.js:

app.post("/ticketDetail", function(req, res) 
{ 
    console.log(req.data.detail); 
    res.json(req.data); 
} 

看起来req.data是不确定的。

我该如何在我的URL处理程序中从我的请求中检索数据?

+0

显示您的app.js的响应FIEL –

+0

您好,u能表明,如果你分享你的app.js代码的server.js文件 –

+0

,我可以帮助你 –

回答

1

您需要从的req

var qs = require('qs'); 

app.post('/', function(req,res){ 
    var body = qs.parse(req.body); 
    var detail = body.detail; 
    console.log('details',detail); //prints test 
}); 
0

我相信你的帖子与AngularJs语法不匹配。你的$ http.post应该是这样的;

$http.post('/ticketDetail', data, config).then(successCallback, errorCallback); 
0

身体得到数据,以便由于某些原因,在你的URL处理器,你不应该用req.datareq.body访问字段data: {detail : "test"}

app.post("/ticketDetail", function(req, res) 
{ 
    console.log(req.body.detail); // prints "test" 
    res.json(req.data); 
}