【发布时间】:2015-01-31 17:07:38
【问题描述】:
这是我的角度发布请求:
var webCall = $http({
method: 'POST',
url: '/validation',
async : true,
headers: {
'Content-Type': 'text/html'
},
data: {email: "abc@gmail.com"}});
webCall.then(successHandler, errorHandler);
现在在我的 nodejs 服务器中,以下代码提取帖子数据:
app.post('/validation',function(req,res){
req.on('data',function(data){
console.log(data.toString());
});
但将请求正文安慰为:
app.post('/validation',function(req,res){
console.log(req.body);
}
控制台空对象。
【问题讨论】:
-
你检查了吗,你的 javascript 控制台说了什么?我个人使用 $resource 代替 $http 和 router.post/get/put/delete 而不是 app.post... 无论如何粘贴您的 JS 控制台错误日志,让我们看看它说了什么。干杯。
-
它没有控制台错误。正如我在问题中所说,它只是控制空对象。
-
你想试试 $resource 吗?然后我可以为您提供一个非常简单的解决方案。
-
是否可以使用资源进行 ajax 调用?如果是这样,那么确定。我会很感激你的帮助。
-
您的问题是因为您将标题内容类型设置为
text/html。尝试删除$http中的headers或将其更改为'Content-Type': 'application/json'
标签: angularjs node.js post express