作为关于用于检索网络论坛资源的统计信息的REST URI的my previous question的后续跟踪,我想知道是否可以使用内部锚点作为过滤器提示。见下面的例子:
a)获取所有统计数据:
GET /group/5t7yu8i9io0op/stat
{
group_id: "5t7yu8i9io0op",
top_ranking_users: {
[ { user: "george", posts: 789, rank: 1 },
{ user: "joel", posts: 560, rank: 2 } ...]
},
popular_topics: {
[ ... ]
},
new_topics: {
[ ... ]
}
}
b)获取热门话题
GET /group/5t7yu8i9io0op/stat#popular_topics
{
group_id: "5t7yu8i9io0op",
popular_topics: {
[ ... ]
}
}
c)仅获得排名最高的用户
GET /group/5t7yu8i9io0op/stat#top_ranking_users
{
group_id: "5t7yu8i9io0op",
top_ranking_users: {
[ { user: "george", posts: 789, rank: 1 },
{ user: "joel", posts: 560, rank: 2 } ...]
}
}
或者我应该使用查询参数吗?
答案 0 :(得分:2)
不确定您要做的是什么,但要确保您了解服务器看不到片段标识符,客户端连接器会将它们切断。
答案 1 :(得分:0)
我从未见过用这种方式使用锚 - 这很有意思。话虽这么说,我建议使用查询参数有几个原因:
他们是标准的 - 您的api的消费者会对他们感到满意。处理一个古怪的api没有什么比这更烦人了。
许多框架会自动解析查询参数,并将它们设置在请求对象的字典中(或者框架/ http服务器库中存在的任何类似物)。
答案 2 :(得分:0)
我认为拥有以下内容会更有意义:
/group/5t7yu8i9io0op/stat/top_users
/group/5t7yu8i9io0op/stat/popular_topics
/group/5t7yu8i9io0op/stat/new_topics
/group/5t7yu8i9io0op/stat/user/george
答案 3 :(得分:0)
不,你不能这样做,因为Jan指出服务器永远不会看到该片段标识符。从字面上看,该部分网址不会到达服务器。