我正在使用此控制器来使用我的服务,然后调用我的router.get,我想在从mongodb获取请求时使用userObject.blood_component作为searchFinder
控制器:
var userObject = {};
userObject.blood_component = "find me";
Bloodstock.getStocks(userObject).then(function(data) {});
然后调用api路由:
服务:
bloodstockFactory.getStocks = function(userObject) {
return $http.get('/api/getStocks/', userObject);
};
api.js:
router.get('/getStocks', function(req, res) {
var newBloodneeded = req.body.blood_component;
console.log("the component is " + newBloodneeded ) //undefined
Bloodstock.find({$and: [ { blood_component:newBloodneeded}]},function(err, bloodstocks) {
res.json({ success: true, bloodstocks: bloodstocks });
});
});
但是当它进入api时,它是未定义的,这里有什么问题
您无法在GET请求中发送数据,您必须将其作为查询字符串或查询参数在URL中传递。
您将不得不进行以下更改
调节器
Bloodstock.getStocks('find me').then(function(data) {});
服务
bloodstockFactory.getStocks = function(searchString) {
return $http.get('/api/getStocks/?search=' + searchString, userObject);
};
现在在API中,您可以使用req.query.search
获取搜索字符串