如何将值从angularjs传递给节点[重复]
Posted
技术标签:
【中文标题】如何将值从angularjs传递给节点[重复]【英文标题】:how to pass a value form angularjs to node [duplicate] 【发布时间】:2017-09-05 12:35:46 【问题描述】:大家好,我在将值从角度传递到节点时遇到问题...我想在服务器上获取限制值并将其传递给限制
这是我的服务器:
app.get("/movies", function(req, res)
var limit = req.query.limit; // i can't get this (variable is undefined)
console.log(limit);
MongoClient.connect(dbUrl, function(err, db)
if (err)
res.status(500);
res.json( error: true );
return;
db.collection("movies").find(, limit: limit ).toArray(function(err, docs)
if (err)
res.status(500);
res.json( error: true );
return;
res.json(docs);
db.close();
);
);
);
控制器
Ctrls.controller('movies', ['$scope', "$http", "$location", function($scope, $http, $location)
$scope.data = [];
var request = $http.get('/movies',
limit: 2
);
request.success(function(data)
$scope.movies = data;
console.log(data);
);
request.error(function(data)
console.log('Error: ' + data);
);
]);
我想在节点中获取值“限制”,我做错了什么? 在服务器变量未定义 (x2)
谢谢
【问题讨论】:
检查到console.log(req);
,如果你找到你的参数
【参考方案1】:
改变这个:
var limit = req.query.limit; // i can't get this (variable is undefined)
到:
var limit = req.params.limit;
或:
var limit = req.body.limit;
这是因为默认情况下,Angular 在request-payload
中发送数据,而不是在form-data
中。
【讨论】:
好的,现在它的工作我改变这个:控制器:var request = $http.post('/movies', data: limit: 3 );服务器:var limit = req.body.data.limit; @MarcinJendruchniewicz 如果你 POST 则使用request.body.X
,如果 GET 则使用 request.params.X
。以上是关于如何将值从angularjs传递给节点[重复]的主要内容,如果未能解决你的问题,请参考以下文章