我需要将来自angularjs控制器的dataId作为数据发送到nodejs。我用Google搜索了,但我没有得到解决方案,有人请帮助我。
控制器文件:
function ManageProductController($http, $scope, $mdDialog, $document, $location, $localStorage)
{
var vm = this;
vm.email = $localStorage.email;
$http({
url: 'http://localhost:7200/api/manage-product',
method: 'GET',
data: {email:vm.email}
}).success(function(res) {
//$scope.productlist = res;
//console.log(res.result);
vm.result=res.result;
//vm.docs=res.docs;
}, function(error) {
console.log(error);
alert('here');
});
}
在上面的代码中,我发送了email
作为数据但是在node.js文件中我没有收到请求。
节点文件:
router.get('/manage-product', function(req, res){
//console.log('I received get request');
console.log(req);
var findProducts = function(db, callback) {
var cursor =db.collection('proInfo').find().toArray(function(err, docs){
if(err){
callback(new Error("Some problem"));
}else{
callback(null,docs);
}
});
};
}
我在这里放了console.log(req);
,但在正文部分我只是body{}
这样。
答案 0 :(得分:4)
使用GET
,您可以使用params
,在服务器上,您可以在req.query
中获取该值,请参阅以下示例:
$http({
url: 'http://localhost:7200/api/manage-product',
method: 'GET',
params: {email:vm.email} //at server it will be req.query.email
}).success(function(res) {
//access returned res here
}, function(error) {
//handle error here
});
使用POST
,您可以使用data
,在服务器上,您可以在req.body
中获取该值,请参阅以下示例:
$http({
url: 'http://localhost:7200/api/manage-product',
method: 'GET',
data: {email:vm.email} //at server it will be req.body.email
}).success(function(res) {
//access returned res here
}, function(error) {
//handle error here
});
答案 1 :(得分:0)
使用逗号
发送此网址下方的数据url: 'http://localhost:7200/api/manage-product',
method: 'GET',
params: {emailData:yourEmaildata}