我在angularjs客户端有一个数据。当我使用$ http.post将数据发送到服务器时,我无法在服务器上读取数据。我不明白我哪里出错了? 这是角度代码:
var data = $.param({
id:$scope.user_id,
});
alert(JSON.stringify(data));
$http.post('/getdetails',data)
这是节点js服务器代码:
app.post('/getdetails',function(req,res){
console.log(req.body);
console.log(req.body.id);
});
在服务器日志输出:
{}
undefined
我不关心我发送的数据,我只担心它是否在服务器上可读。
谢谢!
答案 0 :(得分:0)
您正在尝试使用$ .param()来序列化您的数据,该内容仅在GET方法中使用,而不是在post中使用。只需将您的JSON数据直接发送到nodeJs,如下所示:
var data = {
id:$scope.user_id,
};
$http.post('/getdetails',data)
在您的标题中指定:
"Content-Type" : "application/json"
所以最后的请求将是这样的:
$http.post('/getdetails',data,{headers : {"Content-Type" : "application/json"}})