【发布时间】:2016-05-24 14:33:08
【问题描述】:
我尝试为我的下一个网站创建一个 API,但我无法在一个快速应用程序中使用相同的 url 获得多个查询结果。
虚拟数据:
var data = [{
articles : [{
id : '0',
url : 'foo',
title : 'Foo',
body : 'some foo bar',
category : 'foo',
tags : [
'foo'
]
}, {
id : '1',
url : 'foo-bar',
title : 'Foo bar',
body : 'more foo bar',
category : 'foo',
tags : [
'foo', 'bar'
]
}, {
id : '2',
url : 'foo-bar-baz',
title : 'Foo bar baz',
body : 'more foo bar baz',
category : 'foo',
tags : [
'foo',
'bar',
'baz'
]
}]
}, {
users : [{
name: 'Admin'
}, {
name: 'User'
}]
}];
路由器:
// Grabs articles by categories and tags
// http://127.0.0.1:3000/api/articles/category/foo/tag/bar
router.get('/articles/category/:cat/tag/:tag', function(req, res) {
var articles = data[0].articles;
var q = articles.filter(function (article) {
return article.category === req.params.cat;
return article.tags.some(function(tagId) { return tagId === req.params.tag;});
});
res.json(q);
});
如果我请求http://127.0.0.1:3000/api/articles/category/foo/tag/bar url,如何嵌套结果?现在如果我这样做,tag url 将被忽略,只有category 请求有效。
感谢您的帮助!
【问题讨论】:
标签: javascript json node.js api express