【发布时间】:2015-08-04 06:56:16
【问题描述】:
我无法从 Angular 应用创建的 POST 方法中获取参数。我尝试在这里寻找答案,甚至复制/粘贴一些示例,但似乎没有任何效果。
节点代码:
var express = require('express');
var app = express();
var bodyParser = require('body-parser');
app.use(bodyParser.urlencoded({ extended: false }));
app.use(express.static('public_html'));
app.post('/test', function (request, response) {
console.log(request.body.name)
response.status(201).json(request.body.name);
});
app.listen(8787,function() {
console.log('Listening on 8787');
});
Angular 代码:
$scope.postData = function() {
$http.post('/test',{name: $scope.name}).success(function(data,status) {
console.log('SUCCESS: ' + status);
console.log(data);
}).error(function(error) {
console.log('ERROR');
console.log(data);
})
}
我可以在开发人员工具的网络面板上看到数据已发送,我什至按预期获得了 201 的 http 代码,但我没有收到回复。在 NodeJS 的 post 路由的 console.log() 中,我也变得未定义。似乎正文解析器无法正常工作,或者我缺少其他内容。
【问题讨论】:
标签: javascript angularjs node.js