如何从路由器请求中获取价值?

时间:2017-07-28 05:04:48

标签: angularjs mongodb

我创建了一个角度应用。在这个应用程序中,我想添加一个搜索。为此,我有一个文本框和一个按钮。文本框名称为name =" search"

我在API中有一个get方法。

router.get('/allActivities',  (req, res) => {

    Activity.find({ name: req.body.search }, (err, activities) => {

        if(err) {
            res.json({success: false, message: err});
        } else {
            if(!activities) {
                res.json({success: false, message: 'No recent activities found'});
            } else {
                res.json({success: true, activities: activities});
            }
        }
    })

});

这是获取请求。在此,我试图从角度前端获取文本框值

Activity.find({ name: req.body.search }, (err, activities) =>

这是MongoDB

但我没有得到任何输出。这里的问题是我没有得到这个" req.body.search"我曾经得到文本框的价值。谁能告诉我怎么做?

如果我把

Activity.find({ name: 'Roshini' }, (err, activities) =>
像这样,我得到了输出。所以我很确定我没有正确地获取此get方法的文本框值:/ /

1 个答案:

答案 0 :(得分:0)

Html方

<input ng-model="search">

角度控制器

$http({
    method: 'GET',
    url: '/allActivities?search='+$scope.search
}).then(function (response) {
        $scope.activities = response.data || response
    }, function (response) {
        alert(response)
    }
);

并在后端通过 req.query.search req.params.search 访问它,而不是 req.body.search