现在我的情况是我有一个来自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
未定义。
我应该如何从我的网址处理程序中的请求中检索数据?
答案 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
});
答案 1 :(得分:0)
我相信你的帖子与AngularJs语法不匹配。你的$ http.post应该是;
$http.post('/ticketDetail', data, config).then(successCallback, errorCallback);
答案 2 :(得分:0)
因此,在您的网址处理程序中,您不应使用data: {detail : "test"}
访问字段req.data
,而是使用req.body
。
app.post("/ticketDetail", function(req, res)
{
console.log(req.body.detail); // prints "test"
res.json(req.data);
}