我应该从express中的req.query中检索字符串。我正在实现RESTFul API,我的代码看起来像
router.get('/', function(req, res) {
var count = req.query.count;
var sorting = req.query.sort;
//let obj = JSON.parse(sorting)
if(count == "true") {
user.find({}, function(err, users) {
if(err){
res.status(404).send({
message: err,
data: []
});
} else {
res.status(200).send({
message: 'OK ttt',
data: users.length
});
}
});
}
我们说
var sorting = req.query.sort
给我{\“name \”:1}“
我想从中解析出“名字”。
我用过
JSON.parse(sorting)
但它返回了一个对象,而不是一个字符串。
答案 0 :(得分:2)
JSON.parse
确实返回一个对象:从传递给函数的JSON字符串解析的对象。在这种情况下,它将返回对象{name: 1}
。
要获取name属性的值,您可以执行以下操作:
var name = JSON.parse(sorting).name;
答案 1 :(得分:1)
您可以通过将已解析的数据存储在变量中然后访问其属性来访问name属性的值:
var parsedSorting = JSON.parse(sorting)
console.log(parsedSorting.name) // will log the value of name