2017-04-10 23 views
0

大家好,我有與角度值傳遞到節點......我想獲得服務器上限值和傳遞出現問題,將會限制如何通過價值形式angularjs節點

這是我的服務器:

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); 
    }); 


}]); 

我想獲得節點值「限制」,我做什麼錯? 在服務器變量是未定義的(×2)

感謝

+0

支票存入'的console.log(REQ);'如果你發現你的PARAMS – mickro

回答

0

變化這樣的:

var limit = req.query.limit; // i can't get this (variable is undefined) 

到:

var limit = req.params.limit; 

或:

var limit = req.body.limit; 

這是因爲默認情況下,角度發送的數據不是在form-data中的request-payload

+0

好了,現在它的工作我改變這樣的: 控制器: VAR請求= $ http.post( '/電影',{ 數據:{限制:3} });服務器: var limit = req.body.data.limit; –

+0

@MarcinJendruchniewicz如果你POST然後'request.body.X',如果GET然後'request.params.X'被使用。 – Jai