Nodejs api根据查询string值加载数据

作为初学者,我正在使用MEAN堆栈技术构build一个简单的站点。 我有一个基于oject _id得到测验数据对象的api。 所有工作正常。 我想要做的是,基于从我的urlhttp://localhost:3000/viewQuiz?gpQ=59b2ac3cfc2283480879025c查询string值我希望加载数据,而不是硬编码,如下所示。 我在这里做的是我有一个path设置/viewQuiz和api url是/api/getQuizData 。 所以当我加载http://localhost:3000/viewQuiz?gpQ=xxxxxx我希望api得到正确的数据。 看到我的代码如下

Server.js

 //Routes app.get('/startCampaign', function(req, res){ res.sendFile(__dirname + '/public/views/start-campaign.html'); }); //Get data var Quiz = mongoose.model('Quiz', quizSchema); var ObjectId = require('mongodb').ObjectID; app.get('/api/getQuizData', function(req, res){ Quiz.find({_id:ObjectId("59b2ac3cfc2283480879025c")}, function(err, quiz) { if (err) throw err; // object of the user res.json(quiz[0]); }); }); 

angular位

 //Get Quiz data $scope.quizData = ''; $http.get('/api/getQuizData') .success(function(data) { console.log(data); $scope.quizData = data; }) 

然后我使用这个AngularJs QuizData绑定来显示数据。 如何更改我的server.js文件,使其基于查询string值的dynamic?

在angular度尝试这个//req.query由GPQ值组成,并根据你发送后gpq =“xyz ……”

 Quiz.findById(req.query.gPQ, function(err, quiz) { if (err) throw err; // object of the user res.json(quiz); });